gogol-classroom 0.3.0 → 0.4.0
raw patch · 56 files changed
+7266/−4400 lines, 56 filesdep ~gogol-corePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: gogol-core
API changes (from Hackage documentation)
- Network.Google.Classroom: cAlternateLink :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cCourseGroupEmail :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cCourseMaterialSets :: Lens' Course [CourseMaterialSet]
- Network.Google.Classroom: cCourseState :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cCreationTime :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cDescription :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cDescriptionHeading :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cEnrollmentCode :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cGuardiansEnabled :: Lens' Course (Maybe Bool)
- Network.Google.Classroom: cId :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cName :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cOwnerId :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cRoom :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cSection :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cTeacherFolder :: Lens' Course (Maybe DriveFolder)
- Network.Google.Classroom: cTeacherGroupEmail :: Lens' Course (Maybe Text)
- Network.Google.Classroom: cUpdateTime :: Lens' Course (Maybe Text)
- Network.Google.Classroom: classroomCourseWorkReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.course-work.readonly"]
- Network.Google.Classroom.Types: cAlternateLink :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cCourseGroupEmail :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cCourseMaterialSets :: Lens' Course [CourseMaterialSet]
- Network.Google.Classroom.Types: cCourseState :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cCreationTime :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cDescription :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cDescriptionHeading :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cEnrollmentCode :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cGuardiansEnabled :: Lens' Course (Maybe Bool)
- Network.Google.Classroom.Types: cId :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cName :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cOwnerId :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cRoom :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cSection :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cTeacherFolder :: Lens' Course (Maybe DriveFolder)
- Network.Google.Classroom.Types: cTeacherGroupEmail :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: cUpdateTime :: Lens' Course (Maybe Text)
- Network.Google.Classroom.Types: classroomCourseWorkReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.course-work.readonly"]
- Network.Google.Resource.Classroom.Courses.Aliases.Create: cacBearerToken :: Lens' CoursesAliasesCreate (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.Create: cacPp :: Lens' CoursesAliasesCreate Bool
- Network.Google.Resource.Classroom.Courses.Aliases.Delete: cadBearerToken :: Lens' CoursesAliasesDelete (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.Delete: cadPp :: Lens' CoursesAliasesDelete Bool
- Network.Google.Resource.Classroom.Courses.Aliases.List: calAccessToken :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calBearerToken :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calCallback :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calCourseId :: Lens' CoursesAliasesList Text
- Network.Google.Resource.Classroom.Courses.Aliases.List: calPageSize :: Lens' CoursesAliasesList (Maybe Int32)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calPageToken :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calPp :: Lens' CoursesAliasesList Bool
- Network.Google.Resource.Classroom.Courses.Aliases.List: calUploadProtocol :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calUploadType :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Aliases.List: calXgafv :: Lens' CoursesAliasesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.Create: ccwcBearerToken :: Lens' CoursesCourseWorkCreate (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.Create: ccwcPp :: Lens' CoursesCourseWorkCreate Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.Delete: ccwdBearerToken :: Lens' CoursesCourseWorkDelete (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.Delete: ccwdPp :: Lens' CoursesCourseWorkDelete Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.Get: ccwgBearerToken :: Lens' CoursesCourseWorkGet (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.Get: ccwgPp :: Lens' CoursesCourseWorkGet Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.List: ccwlBearerToken :: Lens' CoursesCourseWorkList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.List: ccwlPp :: Lens' CoursesCourseWorkList Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.Patch: ccwpBearerToken :: Lens' CoursesCourseWorkPatch (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.Patch: ccwpPp :: Lens' CoursesCourseWorkPatch Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get: ccwssgBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsGet (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get: ccwssgPp :: Lens' CoursesCourseWorkStudentSubmissionsGet Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List: ccwsslBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List: ccwsslPp :: Lens' CoursesCourseWorkStudentSubmissionsList Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments: ccwssmaBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments: ccwssmaPp :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: ccwsspBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: ccwsspPp :: Lens' CoursesCourseWorkStudentSubmissionsPatch Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couAccessToken :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couCallback :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couCourseId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couCourseWorkId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couPayload :: Lens' CoursesCourseWorkStudentSubmissionsReclaim ReclaimStudentSubmissionRequest
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couPp :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couUploadProtocol :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couUploadType :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: couXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Return: ccwssrBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsReturn (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Return: ccwssrPp :: Lens' CoursesCourseWorkStudentSubmissionsReturn Bool
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.TurnIn: ccwsstiBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn (Maybe Text)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.TurnIn: ccwsstiPp :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn Bool
- Network.Google.Resource.Classroom.Courses.Create: ccBearerToken :: Lens' CoursesCreate (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Create: ccPp :: Lens' CoursesCreate Bool
- Network.Google.Resource.Classroom.Courses.Delete: cdBearerToken :: Lens' CoursesDelete (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Delete: cdPp :: Lens' CoursesDelete Bool
- Network.Google.Resource.Classroom.Courses.Get: cgBearerToken :: Lens' CoursesGet (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Get: cgPp :: Lens' CoursesGet Bool
- Network.Google.Resource.Classroom.Courses.List: clBearerToken :: Lens' CoursesList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.List: clPp :: Lens' CoursesList Bool
- Network.Google.Resource.Classroom.Courses.Patch: cpBearerToken :: Lens' CoursesPatch (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Patch: cpPp :: Lens' CoursesPatch Bool
- Network.Google.Resource.Classroom.Courses.Students.Create: cscBearerToken :: Lens' CoursesStudentsCreate (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Students.Create: cscPp :: Lens' CoursesStudentsCreate Bool
- Network.Google.Resource.Classroom.Courses.Students.Delete: csdBearerToken :: Lens' CoursesStudentsDelete (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Students.Delete: csdPp :: Lens' CoursesStudentsDelete Bool
- Network.Google.Resource.Classroom.Courses.Students.Get: csgBearerToken :: Lens' CoursesStudentsGet (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Students.Get: csgPp :: Lens' CoursesStudentsGet Bool
- Network.Google.Resource.Classroom.Courses.Students.List: cslBearerToken :: Lens' CoursesStudentsList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Students.List: cslPp :: Lens' CoursesStudentsList Bool
- Network.Google.Resource.Classroom.Courses.Teachers.Create: ctcBearerToken :: Lens' CoursesTeachersCreate (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Teachers.Create: ctcPp :: Lens' CoursesTeachersCreate Bool
- Network.Google.Resource.Classroom.Courses.Teachers.Delete: ctdBearerToken :: Lens' CoursesTeachersDelete (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Teachers.Delete: ctdPp :: Lens' CoursesTeachersDelete Bool
- Network.Google.Resource.Classroom.Courses.Teachers.Get: ctgBearerToken :: Lens' CoursesTeachersGet (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Teachers.Get: ctgPp :: Lens' CoursesTeachersGet Bool
- Network.Google.Resource.Classroom.Courses.Teachers.List: ctlBearerToken :: Lens' CoursesTeachersList (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Teachers.List: ctlPp :: Lens' CoursesTeachersList Bool
- Network.Google.Resource.Classroom.Courses.Update: cuBearerToken :: Lens' CoursesUpdate (Maybe Text)
- Network.Google.Resource.Classroom.Courses.Update: cuPp :: Lens' CoursesUpdate Bool
- Network.Google.Resource.Classroom.Invitations.Accept: iaBearerToken :: Lens' InvitationsAccept (Maybe Text)
- Network.Google.Resource.Classroom.Invitations.Accept: iaPp :: Lens' InvitationsAccept Bool
- Network.Google.Resource.Classroom.Invitations.Create: icBearerToken :: Lens' InvitationsCreate (Maybe Text)
- Network.Google.Resource.Classroom.Invitations.Create: icPp :: Lens' InvitationsCreate Bool
- Network.Google.Resource.Classroom.Invitations.Delete: idBearerToken :: Lens' InvitationsDelete (Maybe Text)
- Network.Google.Resource.Classroom.Invitations.Delete: idPp :: Lens' InvitationsDelete Bool
- Network.Google.Resource.Classroom.Invitations.Get: igBearerToken :: Lens' InvitationsGet (Maybe Text)
- Network.Google.Resource.Classroom.Invitations.Get: igPp :: Lens' InvitationsGet Bool
- Network.Google.Resource.Classroom.Invitations.List: ilBearerToken :: Lens' InvitationsList (Maybe Text)
- Network.Google.Resource.Classroom.Invitations.List: ilPp :: Lens' InvitationsList Bool
- Network.Google.Resource.Classroom.UserProFiles.Get: upfgBearerToken :: Lens' UserProFilesGet (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.Get: upfgPp :: Lens' UserProFilesGet Bool
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create: upfgicBearerToken :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create: upfgicPp :: Lens' UserProFilesGuardianInvitationsCreate Bool
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get: upfgigBearerToken :: Lens' UserProFilesGuardianInvitationsGet (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get: upfgigPp :: Lens' UserProFilesGuardianInvitationsGet Bool
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.List: upfgilBearerToken :: Lens' UserProFilesGuardianInvitationsList (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.List: upfgilPp :: Lens' UserProFilesGuardianInvitationsList Bool
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: upfgipBearerToken :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: upfgipPp :: Lens' UserProFilesGuardianInvitationsPatch Bool
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Delete: upfgdBearerToken :: Lens' UserProFilesGuardiansDelete (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Delete: upfgdPp :: Lens' UserProFilesGuardiansDelete Bool
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Get: upfggBearerToken :: Lens' UserProFilesGuardiansGet (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Get: upfggPp :: Lens' UserProFilesGuardiansGet Bool
- Network.Google.Resource.Classroom.UserProFiles.Guardians.List: upfglBearerToken :: Lens' UserProFilesGuardiansList (Maybe Text)
- Network.Google.Resource.Classroom.UserProFiles.Guardians.List: upfglPp :: Lens' UserProFilesGuardiansList Bool
+ Network.Google.Classroom: AAMAllStudents :: AnnouncementAssigneeMode
+ Network.Google.Classroom: AAMAssigneeModeUnspecified :: AnnouncementAssigneeMode
+ Network.Google.Classroom: AAMIndividualStudents :: AnnouncementAssigneeMode
+ Network.Google.Classroom: ASAnnouncementStateUnspecified :: AnnouncementState
+ Network.Google.Classroom: ASDeleted :: AnnouncementState
+ Network.Google.Classroom: ASDraft :: AnnouncementState
+ Network.Google.Classroom: ASPublished :: AnnouncementState
+ Network.Google.Classroom: Active :: CourseCourseState
+ Network.Google.Classroom: AllStudents :: ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom: Archived :: CourseCourseState
+ Network.Google.Classroom: AssignedGradePointsEarnedChange :: GradeHistoryGradeChangeType
+ Network.Google.Classroom: AssigneeModeUnspecified :: ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom: CWAMAllStudents :: CourseWorkAssigneeMode
+ Network.Google.Classroom: CWAMAssigneeModeUnspecified :: CourseWorkAssigneeMode
+ Network.Google.Classroom: CWAMIndividualStudents :: CourseWorkAssigneeMode
+ Network.Google.Classroom: CWWTAssignment :: CourseWorkWorkType
+ Network.Google.Classroom: CWWTCourseWorkTypeUnspecified :: CourseWorkWorkType
+ Network.Google.Classroom: CWWTMultipleChoiceQuestion :: CourseWorkWorkType
+ Network.Google.Classroom: CWWTShortAnswerQuestion :: CourseWorkWorkType
+ Network.Google.Classroom: Complete :: GuardianInvitationState
+ Network.Google.Classroom: CourseRosterChanges :: FeedFeedType
+ Network.Google.Classroom: CourseStateUnspecified :: CourseCourseState
+ Network.Google.Classroom: CourseWorkChanges :: FeedFeedType
+ Network.Google.Classroom: CourseWorkStateUnspecified :: CourseWorkState
+ Network.Google.Classroom: CreateCourse :: GlobalPermissionPermission
+ Network.Google.Classroom: Created :: StateHistoryState
+ Network.Google.Classroom: Declined :: CourseCourseState
+ Network.Google.Classroom: Deleted :: CourseWorkState
+ Network.Google.Classroom: DomainRosterChanges :: FeedFeedType
+ Network.Google.Classroom: Draft :: CourseWorkState
+ Network.Google.Classroom: DraftGradePointsEarnedChange :: GradeHistoryGradeChangeType
+ Network.Google.Classroom: Edit :: SharedDriveFileShareMode
+ Network.Google.Classroom: FeedTypeUnspecified :: FeedFeedType
+ Network.Google.Classroom: GuardianInvitationStateUnspecified :: GuardianInvitationState
+ Network.Google.Classroom: IRCourseRoleUnspecified :: InvitationRole
+ Network.Google.Classroom: IROwner :: InvitationRole
+ Network.Google.Classroom: IRStudent :: InvitationRole
+ Network.Google.Classroom: IRTeacher :: InvitationRole
+ Network.Google.Classroom: IndividualStudents :: ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom: MAARAMAllStudents :: ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom: MAARAMAssigneeModeUnspecified :: ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom: MAARAMIndividualStudents :: ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom: MaxPointsChange :: GradeHistoryGradeChangeType
+ Network.Google.Classroom: Modifiable :: CourseWorkSubmissionModificationMode
+ Network.Google.Classroom: ModifiableUntilTurnedIn :: CourseWorkSubmissionModificationMode
+ Network.Google.Classroom: Pending :: GuardianInvitationState
+ Network.Google.Classroom: PermissionUnspecified :: GlobalPermissionPermission
+ Network.Google.Classroom: Provisioned :: CourseCourseState
+ Network.Google.Classroom: Published :: CourseWorkState
+ Network.Google.Classroom: ReclaimedByStudent :: StateHistoryState
+ Network.Google.Classroom: Returned :: StateHistoryState
+ Network.Google.Classroom: SSCWTAssignment :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom: SSCWTCourseWorkTypeUnspecified :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom: SSCWTMultipleChoiceQuestion :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom: SSCWTShortAnswerQuestion :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom: SSSCreated :: StudentSubmissionState
+ Network.Google.Classroom: SSSNew :: StudentSubmissionState
+ Network.Google.Classroom: SSSReclaimedByStudent :: StudentSubmissionState
+ Network.Google.Classroom: SSSReturned :: StudentSubmissionState
+ Network.Google.Classroom: SSSSubmissionStateUnspecified :: StudentSubmissionState
+ Network.Google.Classroom: SSSTurnedIn :: StudentSubmissionState
+ Network.Google.Classroom: StateUnspecified :: StateHistoryState
+ Network.Google.Classroom: StudentCopy :: SharedDriveFileShareMode
+ Network.Google.Classroom: StudentEditedAfterTurnIn :: StateHistoryState
+ Network.Google.Classroom: SubmissionModificationModeUnspecified :: CourseWorkSubmissionModificationMode
+ Network.Google.Classroom: Suspended :: CourseCourseState
+ Network.Google.Classroom: TurnedIn :: StateHistoryState
+ Network.Google.Classroom: UnknownGradeChangeType :: GradeHistoryGradeChangeType
+ Network.Google.Classroom: UnknownShareMode :: SharedDriveFileShareMode
+ Network.Google.Classroom: View :: SharedDriveFileShareMode
+ Network.Google.Classroom: X1 :: Xgafv
+ Network.Google.Classroom: X2 :: Xgafv
+ Network.Google.Classroom: aAlternateLink :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom: aAssigneeMode :: Lens' Announcement (Maybe AnnouncementAssigneeMode)
+ Network.Google.Classroom: aCourseId :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom: aCreationTime :: Lens' Announcement (Maybe UTCTime)
+ Network.Google.Classroom: aCreatorUserId :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom: aId :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom: aIndividualStudentsOptions :: Lens' Announcement (Maybe IndividualStudentsOptions)
+ Network.Google.Classroom: aMaterials :: Lens' Announcement [Material]
+ Network.Google.Classroom: aScheduledTime :: Lens' Announcement (Maybe UTCTime)
+ Network.Google.Classroom: aState :: Lens' Announcement (Maybe AnnouncementState)
+ Network.Google.Classroom: aText :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom: aUpdateTime :: Lens' Announcement (Maybe UTCTime)
+ Network.Google.Classroom: announcement :: Announcement
+ Network.Google.Classroom: classroomAnnouncementsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.announcements.readonly"]
+ Network.Google.Classroom: classroomAnnouncementsScope :: Proxy '["https://www.googleapis.com/auth/classroom.announcements"]
+ Network.Google.Classroom: classroomGuardianlinksMeReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly"]
+ Network.Google.Classroom: classroomGuardianlinksStudentsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"]
+ Network.Google.Classroom: classroomGuardianlinksStudentsScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.students"]
+ Network.Google.Classroom: classroomPushNotificationsScope :: Proxy '["https://www.googleapis.com/auth/classroom.push-notifications"]
+ Network.Google.Classroom: cloudPubsubTopic :: CloudPubsubTopic
+ Network.Google.Classroom: couAlternateLink :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couCalendarId :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couCourseGroupEmail :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couCourseMaterialSets :: Lens' Course [CourseMaterialSet]
+ Network.Google.Classroom: couCourseState :: Lens' Course (Maybe CourseCourseState)
+ Network.Google.Classroom: couCreationTime :: Lens' Course (Maybe UTCTime)
+ Network.Google.Classroom: couDescription :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couDescriptionHeading :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couEnrollmentCode :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couGuardiansEnabled :: Lens' Course (Maybe Bool)
+ Network.Google.Classroom: couId :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couName :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couOwnerId :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couRoom :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couSection :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couTeacherFolder :: Lens' Course (Maybe DriveFolder)
+ Network.Google.Classroom: couTeacherGroupEmail :: Lens' Course (Maybe Text)
+ Network.Google.Classroom: couUpdateTime :: Lens' Course (Maybe UTCTime)
+ Network.Google.Classroom: courseRosterChangesInfo :: CourseRosterChangesInfo
+ Network.Google.Classroom: courseWorkChangesInfo :: CourseWorkChangesInfo
+ Network.Google.Classroom: cptTopicName :: Lens' CloudPubsubTopic (Maybe Text)
+ Network.Google.Classroom: crciCourseId :: Lens' CourseRosterChangesInfo (Maybe Text)
+ Network.Google.Classroom: cwAssigneeMode :: Lens' CourseWork (Maybe CourseWorkAssigneeMode)
+ Network.Google.Classroom: cwCreatorUserId :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom: cwIndividualStudentsOptions :: Lens' CourseWork (Maybe IndividualStudentsOptions)
+ Network.Google.Classroom: cwScheduledTime :: Lens' CourseWork (Maybe UTCTime)
+ Network.Google.Classroom: cwciCourseId :: Lens' CourseWorkChangesInfo (Maybe Text)
+ Network.Google.Classroom: data Announcement
+ Network.Google.Classroom: data AnnouncementAssigneeMode
+ Network.Google.Classroom: data AnnouncementState
+ Network.Google.Classroom: data CloudPubsubTopic
+ Network.Google.Classroom: data CourseCourseState
+ Network.Google.Classroom: data CourseRosterChangesInfo
+ Network.Google.Classroom: data CourseWorkAssigneeMode
+ Network.Google.Classroom: data CourseWorkChangesInfo
+ Network.Google.Classroom: data CourseWorkState
+ Network.Google.Classroom: data CourseWorkSubmissionModificationMode
+ Network.Google.Classroom: data CourseWorkWorkType
+ Network.Google.Classroom: data Feed
+ Network.Google.Classroom: data FeedFeedType
+ Network.Google.Classroom: data GlobalPermissionPermission
+ Network.Google.Classroom: data GradeHistory
+ Network.Google.Classroom: data GradeHistoryGradeChangeType
+ Network.Google.Classroom: data GuardianInvitationState
+ Network.Google.Classroom: data IndividualStudentsOptions
+ Network.Google.Classroom: data InvitationRole
+ Network.Google.Classroom: data ListAnnouncementsResponse
+ Network.Google.Classroom: data ModifyAnnouncementAssigneesRequest
+ Network.Google.Classroom: data ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom: data ModifyCourseWorkAssigneesRequest
+ Network.Google.Classroom: data ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom: data ModifyIndividualStudentsOptions
+ Network.Google.Classroom: data Registration
+ Network.Google.Classroom: data SharedDriveFileShareMode
+ Network.Google.Classroom: data StateHistory
+ Network.Google.Classroom: data StateHistoryState
+ Network.Google.Classroom: data StudentSubmissionCourseWorkType
+ Network.Google.Classroom: data StudentSubmissionState
+ Network.Google.Classroom: data SubmissionHistory
+ Network.Google.Classroom: data Xgafv
+ Network.Google.Classroom: fCourseRosterChangesInfo :: Lens' Feed (Maybe CourseRosterChangesInfo)
+ Network.Google.Classroom: fCourseWorkChangesInfo :: Lens' Feed (Maybe CourseWorkChangesInfo)
+ Network.Google.Classroom: fFeedType :: Lens' Feed (Maybe FeedFeedType)
+ Network.Google.Classroom: feed :: Feed
+ Network.Google.Classroom: ghActorUserId :: Lens' GradeHistory (Maybe Text)
+ Network.Google.Classroom: ghGradeChangeType :: Lens' GradeHistory (Maybe GradeHistoryGradeChangeType)
+ Network.Google.Classroom: ghGradeTimestamp :: Lens' GradeHistory (Maybe UTCTime)
+ Network.Google.Classroom: ghMaxPoints :: Lens' GradeHistory (Maybe Double)
+ Network.Google.Classroom: ghPointsEarned :: Lens' GradeHistory (Maybe Double)
+ Network.Google.Classroom: gradeHistory :: GradeHistory
+ Network.Google.Classroom: individualStudentsOptions :: IndividualStudentsOptions
+ Network.Google.Classroom: isoStudentIds :: Lens' IndividualStudentsOptions [Text]
+ Network.Google.Classroom: larAnnouncements :: Lens' ListAnnouncementsResponse [Announcement]
+ Network.Google.Classroom: larNextPageToken :: Lens' ListAnnouncementsResponse (Maybe Text)
+ Network.Google.Classroom: listAnnouncementsResponse :: ListAnnouncementsResponse
+ Network.Google.Classroom: maarAssigneeMode :: Lens' ModifyAnnouncementAssigneesRequest (Maybe ModifyAnnouncementAssigneesRequestAssigneeMode)
+ Network.Google.Classroom: maarModifyIndividualStudentsOptions :: Lens' ModifyAnnouncementAssigneesRequest (Maybe ModifyIndividualStudentsOptions)
+ Network.Google.Classroom: mcwarAssigneeMode :: Lens' ModifyCourseWorkAssigneesRequest (Maybe ModifyCourseWorkAssigneesRequestAssigneeMode)
+ Network.Google.Classroom: mcwarModifyIndividualStudentsOptions :: Lens' ModifyCourseWorkAssigneesRequest (Maybe ModifyIndividualStudentsOptions)
+ Network.Google.Classroom: misoAddStudentIds :: Lens' ModifyIndividualStudentsOptions [Text]
+ Network.Google.Classroom: misoRemoveStudentIds :: Lens' ModifyIndividualStudentsOptions [Text]
+ Network.Google.Classroom: modifyAnnouncementAssigneesRequest :: ModifyAnnouncementAssigneesRequest
+ Network.Google.Classroom: modifyCourseWorkAssigneesRequest :: ModifyCourseWorkAssigneesRequest
+ Network.Google.Classroom: modifyIndividualStudentsOptions :: ModifyIndividualStudentsOptions
+ Network.Google.Classroom: rCloudPubsubTopic :: Lens' Registration (Maybe CloudPubsubTopic)
+ Network.Google.Classroom: rExpiryTime :: Lens' Registration (Maybe UTCTime)
+ Network.Google.Classroom: rFeed :: Lens' Registration (Maybe Feed)
+ Network.Google.Classroom: rRegistrationId :: Lens' Registration (Maybe Text)
+ Network.Google.Classroom: registration :: Registration
+ Network.Google.Classroom: shActorUserId :: Lens' StateHistory (Maybe Text)
+ Network.Google.Classroom: shGradeHistory :: Lens' SubmissionHistory (Maybe GradeHistory)
+ Network.Google.Classroom: shState :: Lens' StateHistory (Maybe StateHistoryState)
+ Network.Google.Classroom: shStateHistory :: Lens' SubmissionHistory (Maybe StateHistory)
+ Network.Google.Classroom: shStateTimestamp :: Lens' StateHistory (Maybe UTCTime)
+ Network.Google.Classroom: ssSubmissionHistory :: Lens' StudentSubmission [SubmissionHistory]
+ Network.Google.Classroom: stateHistory :: StateHistory
+ Network.Google.Classroom: submissionHistory :: SubmissionHistory
+ Network.Google.Classroom: upfVerifiedTeacher :: Lens' UserProFile (Maybe Bool)
+ Network.Google.Classroom.Types: AAMAllStudents :: AnnouncementAssigneeMode
+ Network.Google.Classroom.Types: AAMAssigneeModeUnspecified :: AnnouncementAssigneeMode
+ Network.Google.Classroom.Types: AAMIndividualStudents :: AnnouncementAssigneeMode
+ Network.Google.Classroom.Types: ASAnnouncementStateUnspecified :: AnnouncementState
+ Network.Google.Classroom.Types: ASDeleted :: AnnouncementState
+ Network.Google.Classroom.Types: ASDraft :: AnnouncementState
+ Network.Google.Classroom.Types: ASPublished :: AnnouncementState
+ Network.Google.Classroom.Types: Active :: CourseCourseState
+ Network.Google.Classroom.Types: AllStudents :: ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: Archived :: CourseCourseState
+ Network.Google.Classroom.Types: AssignedGradePointsEarnedChange :: GradeHistoryGradeChangeType
+ Network.Google.Classroom.Types: AssigneeModeUnspecified :: ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: CWAMAllStudents :: CourseWorkAssigneeMode
+ Network.Google.Classroom.Types: CWAMAssigneeModeUnspecified :: CourseWorkAssigneeMode
+ Network.Google.Classroom.Types: CWAMIndividualStudents :: CourseWorkAssigneeMode
+ Network.Google.Classroom.Types: CWWTAssignment :: CourseWorkWorkType
+ Network.Google.Classroom.Types: CWWTCourseWorkTypeUnspecified :: CourseWorkWorkType
+ Network.Google.Classroom.Types: CWWTMultipleChoiceQuestion :: CourseWorkWorkType
+ Network.Google.Classroom.Types: CWWTShortAnswerQuestion :: CourseWorkWorkType
+ Network.Google.Classroom.Types: Complete :: GuardianInvitationState
+ Network.Google.Classroom.Types: CourseRosterChanges :: FeedFeedType
+ Network.Google.Classroom.Types: CourseStateUnspecified :: CourseCourseState
+ Network.Google.Classroom.Types: CourseWorkChanges :: FeedFeedType
+ Network.Google.Classroom.Types: CourseWorkStateUnspecified :: CourseWorkState
+ Network.Google.Classroom.Types: CreateCourse :: GlobalPermissionPermission
+ Network.Google.Classroom.Types: Created :: StateHistoryState
+ Network.Google.Classroom.Types: Declined :: CourseCourseState
+ Network.Google.Classroom.Types: Deleted :: CourseWorkState
+ Network.Google.Classroom.Types: DomainRosterChanges :: FeedFeedType
+ Network.Google.Classroom.Types: Draft :: CourseWorkState
+ Network.Google.Classroom.Types: DraftGradePointsEarnedChange :: GradeHistoryGradeChangeType
+ Network.Google.Classroom.Types: Edit :: SharedDriveFileShareMode
+ Network.Google.Classroom.Types: FeedTypeUnspecified :: FeedFeedType
+ Network.Google.Classroom.Types: GuardianInvitationStateUnspecified :: GuardianInvitationState
+ Network.Google.Classroom.Types: IRCourseRoleUnspecified :: InvitationRole
+ Network.Google.Classroom.Types: IROwner :: InvitationRole
+ Network.Google.Classroom.Types: IRStudent :: InvitationRole
+ Network.Google.Classroom.Types: IRTeacher :: InvitationRole
+ Network.Google.Classroom.Types: IndividualStudents :: ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: MAARAMAllStudents :: ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: MAARAMAssigneeModeUnspecified :: ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: MAARAMIndividualStudents :: ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: MaxPointsChange :: GradeHistoryGradeChangeType
+ Network.Google.Classroom.Types: Modifiable :: CourseWorkSubmissionModificationMode
+ Network.Google.Classroom.Types: ModifiableUntilTurnedIn :: CourseWorkSubmissionModificationMode
+ Network.Google.Classroom.Types: Pending :: GuardianInvitationState
+ Network.Google.Classroom.Types: PermissionUnspecified :: GlobalPermissionPermission
+ Network.Google.Classroom.Types: Provisioned :: CourseCourseState
+ Network.Google.Classroom.Types: Published :: CourseWorkState
+ Network.Google.Classroom.Types: ReclaimedByStudent :: StateHistoryState
+ Network.Google.Classroom.Types: Returned :: StateHistoryState
+ Network.Google.Classroom.Types: SSCWTAssignment :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom.Types: SSCWTCourseWorkTypeUnspecified :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom.Types: SSCWTMultipleChoiceQuestion :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom.Types: SSCWTShortAnswerQuestion :: StudentSubmissionCourseWorkType
+ Network.Google.Classroom.Types: SSSCreated :: StudentSubmissionState
+ Network.Google.Classroom.Types: SSSNew :: StudentSubmissionState
+ Network.Google.Classroom.Types: SSSReclaimedByStudent :: StudentSubmissionState
+ Network.Google.Classroom.Types: SSSReturned :: StudentSubmissionState
+ Network.Google.Classroom.Types: SSSSubmissionStateUnspecified :: StudentSubmissionState
+ Network.Google.Classroom.Types: SSSTurnedIn :: StudentSubmissionState
+ Network.Google.Classroom.Types: StateUnspecified :: StateHistoryState
+ Network.Google.Classroom.Types: StudentCopy :: SharedDriveFileShareMode
+ Network.Google.Classroom.Types: StudentEditedAfterTurnIn :: StateHistoryState
+ Network.Google.Classroom.Types: SubmissionModificationModeUnspecified :: CourseWorkSubmissionModificationMode
+ Network.Google.Classroom.Types: Suspended :: CourseCourseState
+ Network.Google.Classroom.Types: TurnedIn :: StateHistoryState
+ Network.Google.Classroom.Types: UnknownGradeChangeType :: GradeHistoryGradeChangeType
+ Network.Google.Classroom.Types: UnknownShareMode :: SharedDriveFileShareMode
+ Network.Google.Classroom.Types: View :: SharedDriveFileShareMode
+ Network.Google.Classroom.Types: X1 :: Xgafv
+ Network.Google.Classroom.Types: X2 :: Xgafv
+ Network.Google.Classroom.Types: aAlternateLink :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom.Types: aAssigneeMode :: Lens' Announcement (Maybe AnnouncementAssigneeMode)
+ Network.Google.Classroom.Types: aCourseId :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom.Types: aCreationTime :: Lens' Announcement (Maybe UTCTime)
+ Network.Google.Classroom.Types: aCreatorUserId :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom.Types: aId :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom.Types: aIndividualStudentsOptions :: Lens' Announcement (Maybe IndividualStudentsOptions)
+ Network.Google.Classroom.Types: aMaterials :: Lens' Announcement [Material]
+ Network.Google.Classroom.Types: aScheduledTime :: Lens' Announcement (Maybe UTCTime)
+ Network.Google.Classroom.Types: aState :: Lens' Announcement (Maybe AnnouncementState)
+ Network.Google.Classroom.Types: aText :: Lens' Announcement (Maybe Text)
+ Network.Google.Classroom.Types: aUpdateTime :: Lens' Announcement (Maybe UTCTime)
+ Network.Google.Classroom.Types: announcement :: Announcement
+ Network.Google.Classroom.Types: classroomAnnouncementsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.announcements.readonly"]
+ Network.Google.Classroom.Types: classroomAnnouncementsScope :: Proxy '["https://www.googleapis.com/auth/classroom.announcements"]
+ Network.Google.Classroom.Types: classroomGuardianlinksMeReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly"]
+ Network.Google.Classroom.Types: classroomGuardianlinksStudentsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"]
+ Network.Google.Classroom.Types: classroomGuardianlinksStudentsScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.students"]
+ Network.Google.Classroom.Types: classroomPushNotificationsScope :: Proxy '["https://www.googleapis.com/auth/classroom.push-notifications"]
+ Network.Google.Classroom.Types: cloudPubsubTopic :: CloudPubsubTopic
+ Network.Google.Classroom.Types: couAlternateLink :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couCalendarId :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couCourseGroupEmail :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couCourseMaterialSets :: Lens' Course [CourseMaterialSet]
+ Network.Google.Classroom.Types: couCourseState :: Lens' Course (Maybe CourseCourseState)
+ Network.Google.Classroom.Types: couCreationTime :: Lens' Course (Maybe UTCTime)
+ Network.Google.Classroom.Types: couDescription :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couDescriptionHeading :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couEnrollmentCode :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couGuardiansEnabled :: Lens' Course (Maybe Bool)
+ Network.Google.Classroom.Types: couId :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couName :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couOwnerId :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couRoom :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couSection :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couTeacherFolder :: Lens' Course (Maybe DriveFolder)
+ Network.Google.Classroom.Types: couTeacherGroupEmail :: Lens' Course (Maybe Text)
+ Network.Google.Classroom.Types: couUpdateTime :: Lens' Course (Maybe UTCTime)
+ Network.Google.Classroom.Types: courseRosterChangesInfo :: CourseRosterChangesInfo
+ Network.Google.Classroom.Types: courseWorkChangesInfo :: CourseWorkChangesInfo
+ Network.Google.Classroom.Types: cptTopicName :: Lens' CloudPubsubTopic (Maybe Text)
+ Network.Google.Classroom.Types: crciCourseId :: Lens' CourseRosterChangesInfo (Maybe Text)
+ Network.Google.Classroom.Types: cwAssigneeMode :: Lens' CourseWork (Maybe CourseWorkAssigneeMode)
+ Network.Google.Classroom.Types: cwCreatorUserId :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom.Types: cwIndividualStudentsOptions :: Lens' CourseWork (Maybe IndividualStudentsOptions)
+ Network.Google.Classroom.Types: cwScheduledTime :: Lens' CourseWork (Maybe UTCTime)
+ Network.Google.Classroom.Types: cwciCourseId :: Lens' CourseWorkChangesInfo (Maybe Text)
+ Network.Google.Classroom.Types: data Announcement
+ Network.Google.Classroom.Types: data AnnouncementAssigneeMode
+ Network.Google.Classroom.Types: data AnnouncementState
+ Network.Google.Classroom.Types: data CloudPubsubTopic
+ Network.Google.Classroom.Types: data CourseCourseState
+ Network.Google.Classroom.Types: data CourseRosterChangesInfo
+ Network.Google.Classroom.Types: data CourseWorkAssigneeMode
+ Network.Google.Classroom.Types: data CourseWorkChangesInfo
+ Network.Google.Classroom.Types: data CourseWorkState
+ Network.Google.Classroom.Types: data CourseWorkSubmissionModificationMode
+ Network.Google.Classroom.Types: data CourseWorkWorkType
+ Network.Google.Classroom.Types: data Feed
+ Network.Google.Classroom.Types: data FeedFeedType
+ Network.Google.Classroom.Types: data GlobalPermissionPermission
+ Network.Google.Classroom.Types: data GradeHistory
+ Network.Google.Classroom.Types: data GradeHistoryGradeChangeType
+ Network.Google.Classroom.Types: data GuardianInvitationState
+ Network.Google.Classroom.Types: data IndividualStudentsOptions
+ Network.Google.Classroom.Types: data InvitationRole
+ Network.Google.Classroom.Types: data ListAnnouncementsResponse
+ Network.Google.Classroom.Types: data ModifyAnnouncementAssigneesRequest
+ Network.Google.Classroom.Types: data ModifyAnnouncementAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: data ModifyCourseWorkAssigneesRequest
+ Network.Google.Classroom.Types: data ModifyCourseWorkAssigneesRequestAssigneeMode
+ Network.Google.Classroom.Types: data ModifyIndividualStudentsOptions
+ Network.Google.Classroom.Types: data Registration
+ Network.Google.Classroom.Types: data SharedDriveFileShareMode
+ Network.Google.Classroom.Types: data StateHistory
+ Network.Google.Classroom.Types: data StateHistoryState
+ Network.Google.Classroom.Types: data StudentSubmissionCourseWorkType
+ Network.Google.Classroom.Types: data StudentSubmissionState
+ Network.Google.Classroom.Types: data SubmissionHistory
+ Network.Google.Classroom.Types: data Xgafv
+ Network.Google.Classroom.Types: fCourseRosterChangesInfo :: Lens' Feed (Maybe CourseRosterChangesInfo)
+ Network.Google.Classroom.Types: fCourseWorkChangesInfo :: Lens' Feed (Maybe CourseWorkChangesInfo)
+ Network.Google.Classroom.Types: fFeedType :: Lens' Feed (Maybe FeedFeedType)
+ Network.Google.Classroom.Types: feed :: Feed
+ Network.Google.Classroom.Types: ghActorUserId :: Lens' GradeHistory (Maybe Text)
+ Network.Google.Classroom.Types: ghGradeChangeType :: Lens' GradeHistory (Maybe GradeHistoryGradeChangeType)
+ Network.Google.Classroom.Types: ghGradeTimestamp :: Lens' GradeHistory (Maybe UTCTime)
+ Network.Google.Classroom.Types: ghMaxPoints :: Lens' GradeHistory (Maybe Double)
+ Network.Google.Classroom.Types: ghPointsEarned :: Lens' GradeHistory (Maybe Double)
+ Network.Google.Classroom.Types: gradeHistory :: GradeHistory
+ Network.Google.Classroom.Types: individualStudentsOptions :: IndividualStudentsOptions
+ Network.Google.Classroom.Types: isoStudentIds :: Lens' IndividualStudentsOptions [Text]
+ Network.Google.Classroom.Types: larAnnouncements :: Lens' ListAnnouncementsResponse [Announcement]
+ Network.Google.Classroom.Types: larNextPageToken :: Lens' ListAnnouncementsResponse (Maybe Text)
+ Network.Google.Classroom.Types: listAnnouncementsResponse :: ListAnnouncementsResponse
+ Network.Google.Classroom.Types: maarAssigneeMode :: Lens' ModifyAnnouncementAssigneesRequest (Maybe ModifyAnnouncementAssigneesRequestAssigneeMode)
+ Network.Google.Classroom.Types: maarModifyIndividualStudentsOptions :: Lens' ModifyAnnouncementAssigneesRequest (Maybe ModifyIndividualStudentsOptions)
+ Network.Google.Classroom.Types: mcwarAssigneeMode :: Lens' ModifyCourseWorkAssigneesRequest (Maybe ModifyCourseWorkAssigneesRequestAssigneeMode)
+ Network.Google.Classroom.Types: mcwarModifyIndividualStudentsOptions :: Lens' ModifyCourseWorkAssigneesRequest (Maybe ModifyIndividualStudentsOptions)
+ Network.Google.Classroom.Types: misoAddStudentIds :: Lens' ModifyIndividualStudentsOptions [Text]
+ Network.Google.Classroom.Types: misoRemoveStudentIds :: Lens' ModifyIndividualStudentsOptions [Text]
+ Network.Google.Classroom.Types: modifyAnnouncementAssigneesRequest :: ModifyAnnouncementAssigneesRequest
+ Network.Google.Classroom.Types: modifyCourseWorkAssigneesRequest :: ModifyCourseWorkAssigneesRequest
+ Network.Google.Classroom.Types: modifyIndividualStudentsOptions :: ModifyIndividualStudentsOptions
+ Network.Google.Classroom.Types: rCloudPubsubTopic :: Lens' Registration (Maybe CloudPubsubTopic)
+ Network.Google.Classroom.Types: rExpiryTime :: Lens' Registration (Maybe UTCTime)
+ Network.Google.Classroom.Types: rFeed :: Lens' Registration (Maybe Feed)
+ Network.Google.Classroom.Types: rRegistrationId :: Lens' Registration (Maybe Text)
+ Network.Google.Classroom.Types: registration :: Registration
+ Network.Google.Classroom.Types: shActorUserId :: Lens' StateHistory (Maybe Text)
+ Network.Google.Classroom.Types: shGradeHistory :: Lens' SubmissionHistory (Maybe GradeHistory)
+ Network.Google.Classroom.Types: shState :: Lens' StateHistory (Maybe StateHistoryState)
+ Network.Google.Classroom.Types: shStateHistory :: Lens' SubmissionHistory (Maybe StateHistory)
+ Network.Google.Classroom.Types: shStateTimestamp :: Lens' StateHistory (Maybe UTCTime)
+ Network.Google.Classroom.Types: ssSubmissionHistory :: Lens' StudentSubmission [SubmissionHistory]
+ Network.Google.Classroom.Types: stateHistory :: StateHistory
+ Network.Google.Classroom.Types: submissionHistory :: SubmissionHistory
+ Network.Google.Classroom.Types: upfVerifiedTeacher :: Lens' UserProFile (Maybe Bool)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaAccessToken :: Lens' CoursesAliasesList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaCallback :: Lens' CoursesAliasesList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaCourseId :: Lens' CoursesAliasesList Text
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaPageSize :: Lens' CoursesAliasesList (Maybe Int32)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaPageToken :: Lens' CoursesAliasesList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaUploadProtocol :: Lens' CoursesAliasesList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaUploadType :: Lens' CoursesAliasesList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.List: calaXgafv :: Lens' CoursesAliasesList (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couAccessToken :: Lens' CoursesAnnouncementsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couCallback :: Lens' CoursesAnnouncementsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couCourseId :: Lens' CoursesAnnouncementsCreate Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couPayload :: Lens' CoursesAnnouncementsCreate Announcement
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couUploadProtocol :: Lens' CoursesAnnouncementsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couUploadType :: Lens' CoursesAnnouncementsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: couXgafv :: Lens' CoursesAnnouncementsCreate (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: coursesAnnouncementsCreate :: Text -> Announcement -> CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: data CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.Announcements.Create.CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.Announcements.Create.CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.Announcements.Create.CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.Announcements.Create.CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.Announcements.Create.CoursesAnnouncementsCreate
+ Network.Google.Resource.Classroom.Courses.Announcements.Create: type CoursesAnnouncementsCreateResource = "v1" :> "courses" :> Capture "courseId" Text :> "announcements" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Announcement :> Post '[JSON] Announcement
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cAccessToken :: Lens' CoursesAnnouncementsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cCallback :: Lens' CoursesAnnouncementsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cCourseId :: Lens' CoursesAnnouncementsDelete Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cId :: Lens' CoursesAnnouncementsDelete Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cUploadProtocol :: Lens' CoursesAnnouncementsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cUploadType :: Lens' CoursesAnnouncementsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: cXgafv :: Lens' CoursesAnnouncementsDelete (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: coursesAnnouncementsDelete :: Text -> Text -> CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: data CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.Announcements.Delete.CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.Announcements.Delete.CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.Announcements.Delete.CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.Announcements.Delete.CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.Announcements.Delete.CoursesAnnouncementsDelete
+ Network.Google.Resource.Classroom.Courses.Announcements.Delete: type CoursesAnnouncementsDeleteResource = "v1" :> "courses" :> Capture "courseId" Text :> "announcements" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagAccessToken :: Lens' CoursesAnnouncementsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagCallback :: Lens' CoursesAnnouncementsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagCourseId :: Lens' CoursesAnnouncementsGet Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagId :: Lens' CoursesAnnouncementsGet Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagUploadProtocol :: Lens' CoursesAnnouncementsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagUploadType :: Lens' CoursesAnnouncementsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: cagXgafv :: Lens' CoursesAnnouncementsGet (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: coursesAnnouncementsGet :: Text -> Text -> CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: data CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.Announcements.Get.CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.Announcements.Get.CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.Announcements.Get.CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.Announcements.Get.CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.Announcements.Get.CoursesAnnouncementsGet
+ Network.Google.Resource.Classroom.Courses.Announcements.Get: type CoursesAnnouncementsGetResource = "v1" :> "courses" :> Capture "courseId" Text :> "announcements" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Announcement
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calAccessToken :: Lens' CoursesAnnouncementsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calAnnouncementStates :: Lens' CoursesAnnouncementsList [Text]
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calCallback :: Lens' CoursesAnnouncementsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calCourseId :: Lens' CoursesAnnouncementsList Text
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calOrderBy :: Lens' CoursesAnnouncementsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calPageSize :: Lens' CoursesAnnouncementsList (Maybe Int32)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calPageToken :: Lens' CoursesAnnouncementsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calUploadProtocol :: Lens' CoursesAnnouncementsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calUploadType :: Lens' CoursesAnnouncementsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: calXgafv :: Lens' CoursesAnnouncementsList (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.List: coursesAnnouncementsList :: Text -> CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: data CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.Announcements.List.CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.Announcements.List.CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.Announcements.List.CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.Announcements.List.CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.Announcements.List.CoursesAnnouncementsList
+ Network.Google.Resource.Classroom.Courses.Announcements.List: type CoursesAnnouncementsListResource = "v1" :> "courses" :> Capture "courseId" Text :> "announcements" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "orderBy" Text :> QueryParams "announcementStates" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListAnnouncementsResponse
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaAccessToken :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaCallback :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaCourseId :: Lens' CoursesAnnouncementsModifyAssignees Text
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaId :: Lens' CoursesAnnouncementsModifyAssignees Text
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaPayload :: Lens' CoursesAnnouncementsModifyAssignees ModifyAnnouncementAssigneesRequest
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaUploadProtocol :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaUploadType :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: camaXgafv :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: coursesAnnouncementsModifyAssignees :: Text -> ModifyAnnouncementAssigneesRequest -> Text -> CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: data CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees.CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees.CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees.CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees.CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees.CoursesAnnouncementsModifyAssignees
+ Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees: type CoursesAnnouncementsModifyAssigneesResource = "v1" :> "courses" :> Capture "courseId" Text :> "announcements" :> CaptureMode "id" "modifyAssignees" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] ModifyAnnouncementAssigneesRequest :> Post '[JSON] Announcement
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capAccessToken :: Lens' CoursesAnnouncementsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capCallback :: Lens' CoursesAnnouncementsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capCourseId :: Lens' CoursesAnnouncementsPatch Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capId :: Lens' CoursesAnnouncementsPatch Text
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capPayload :: Lens' CoursesAnnouncementsPatch Announcement
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capUpdateMask :: Lens' CoursesAnnouncementsPatch (Maybe GFieldMask)
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capUploadProtocol :: Lens' CoursesAnnouncementsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capUploadType :: Lens' CoursesAnnouncementsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: capXgafv :: Lens' CoursesAnnouncementsPatch (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: coursesAnnouncementsPatch :: Text -> Announcement -> Text -> CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: data CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.Announcements.Patch.CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.Announcements.Patch.CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.Announcements.Patch.CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.Announcements.Patch.CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.Announcements.Patch.CoursesAnnouncementsPatch
+ Network.Google.Resource.Classroom.Courses.Announcements.Patch: type CoursesAnnouncementsPatchResource = "v1" :> "courses" :> Capture "courseId" Text :> "announcements" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "updateMask" GFieldMask :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Announcement :> Patch '[JSON] Announcement
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaAccessToken :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaCallback :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaCourseId :: Lens' CoursesCourseWorkModifyAssignees Text
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaId :: Lens' CoursesCourseWorkModifyAssignees Text
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaPayload :: Lens' CoursesCourseWorkModifyAssignees ModifyCourseWorkAssigneesRequest
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaUploadProtocol :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaUploadType :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: ccwmaXgafv :: Lens' CoursesCourseWorkModifyAssignees (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: coursesCourseWorkModifyAssignees :: Text -> ModifyCourseWorkAssigneesRequest -> Text -> CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: data CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: instance Data.Data.Data Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees.CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees.CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees.CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: instance GHC.Show.Show Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees.CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees.CoursesCourseWorkModifyAssignees
+ Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees: type CoursesCourseWorkModifyAssigneesResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> CaptureMode "id" "modifyAssignees" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] ModifyCourseWorkAssigneesRequest :> Post '[JSON] CourseWork
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcAccessToken :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcCallback :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcCourseId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcCourseWorkId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcPayload :: Lens' CoursesCourseWorkStudentSubmissionsReclaim ReclaimStudentSubmissionRequest
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcUploadProtocol :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcUploadType :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: ccwssrcXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Registrations.Create: data RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: instance Data.Data.Data Network.Google.Resource.Classroom.Registrations.Create.RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Registrations.Create.RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Registrations.Create.RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: instance GHC.Show.Show Network.Google.Resource.Classroom.Registrations.Create.RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Registrations.Create.RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: rcAccessToken :: Lens' RegistrationsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Create: rcCallback :: Lens' RegistrationsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Create: rcPayload :: Lens' RegistrationsCreate Registration
+ Network.Google.Resource.Classroom.Registrations.Create: rcUploadProtocol :: Lens' RegistrationsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Create: rcUploadType :: Lens' RegistrationsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Create: rcXgafv :: Lens' RegistrationsCreate (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Registrations.Create: registrationsCreate :: Registration -> RegistrationsCreate
+ Network.Google.Resource.Classroom.Registrations.Create: type RegistrationsCreateResource = "v1" :> "registrations" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Registration :> Post '[JSON] Registration
+ Network.Google.Resource.Classroom.Registrations.Delete: data RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: instance Data.Data.Data Network.Google.Resource.Classroom.Registrations.Delete.RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: instance GHC.Classes.Eq Network.Google.Resource.Classroom.Registrations.Delete.RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: instance GHC.Generics.Generic Network.Google.Resource.Classroom.Registrations.Delete.RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: instance GHC.Show.Show Network.Google.Resource.Classroom.Registrations.Delete.RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: instance Network.Google.Types.GoogleRequest Network.Google.Resource.Classroom.Registrations.Delete.RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: rdAccessToken :: Lens' RegistrationsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Delete: rdCallback :: Lens' RegistrationsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Delete: rdRegistrationId :: Lens' RegistrationsDelete Text
+ Network.Google.Resource.Classroom.Registrations.Delete: rdUploadProtocol :: Lens' RegistrationsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Delete: rdUploadType :: Lens' RegistrationsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Registrations.Delete: rdXgafv :: Lens' RegistrationsDelete (Maybe Xgafv)
+ Network.Google.Resource.Classroom.Registrations.Delete: registrationsDelete :: Text -> RegistrationsDelete
+ Network.Google.Resource.Classroom.Registrations.Delete: type RegistrationsDeleteResource = "v1" :> "registrations" :> Capture "registrationId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Classroom: cwCreationTime :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom: cwCreationTime :: Lens' CourseWork (Maybe UTCTime)
- Network.Google.Classroom: cwState :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom: cwState :: Lens' CourseWork (Maybe CourseWorkState)
- Network.Google.Classroom: cwSubmissionModificationMode :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom: cwSubmissionModificationMode :: Lens' CourseWork (Maybe CourseWorkSubmissionModificationMode)
- Network.Google.Classroom: cwUpdateTime :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom: cwUpdateTime :: Lens' CourseWork (Maybe UTCTime)
- Network.Google.Classroom: cwWorkType :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom: cwWorkType :: Lens' CourseWork (Maybe CourseWorkWorkType)
- Network.Google.Classroom: giCreationTime :: Lens' GuardianInvitation (Maybe Text)
+ Network.Google.Classroom: giCreationTime :: Lens' GuardianInvitation (Maybe UTCTime)
- Network.Google.Classroom: giState :: Lens' GuardianInvitation (Maybe Text)
+ Network.Google.Classroom: giState :: Lens' GuardianInvitation (Maybe GuardianInvitationState)
- Network.Google.Classroom: gpPermission :: Lens' GlobalPermission (Maybe Text)
+ Network.Google.Classroom: gpPermission :: Lens' GlobalPermission (Maybe GlobalPermissionPermission)
- Network.Google.Classroom: iRole :: Lens' Invitation (Maybe Text)
+ Network.Google.Classroom: iRole :: Lens' Invitation (Maybe InvitationRole)
- Network.Google.Classroom: sdfShareMode :: Lens' SharedDriveFile (Maybe Text)
+ Network.Google.Classroom: sdfShareMode :: Lens' SharedDriveFile (Maybe SharedDriveFileShareMode)
- Network.Google.Classroom: ssCourseWorkType :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom: ssCourseWorkType :: Lens' StudentSubmission (Maybe StudentSubmissionCourseWorkType)
- Network.Google.Classroom: ssCreationTime :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom: ssCreationTime :: Lens' StudentSubmission (Maybe UTCTime)
- Network.Google.Classroom: ssState :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom: ssState :: Lens' StudentSubmission (Maybe StudentSubmissionState)
- Network.Google.Classroom: ssUpdateTime :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom: ssUpdateTime :: Lens' StudentSubmission (Maybe UTCTime)
- Network.Google.Classroom: type ClassroomAPI = InvitationsListResource :<|> (InvitationsAcceptResource :<|> (InvitationsGetResource :<|> (InvitationsCreateResource :<|> (InvitationsDeleteResource :<|> (CoursesCourseWorkStudentSubmissionsReturnResource :<|> (CoursesCourseWorkStudentSubmissionsListResource :<|> (CoursesCourseWorkStudentSubmissionsReclaimResource :<|> (CoursesCourseWorkStudentSubmissionsPatchResource :<|> (CoursesCourseWorkStudentSubmissionsGetResource :<|> (CoursesCourseWorkStudentSubmissionsTurnInResource :<|> (CoursesCourseWorkStudentSubmissionsModifyAttachmentsResource :<|> (CoursesCourseWorkListResource :<|> (CoursesCourseWorkPatchResource :<|> (CoursesCourseWorkGetResource :<|> (CoursesCourseWorkCreateResource :<|> (CoursesCourseWorkDeleteResource :<|> (CoursesTeachersListResource :<|> (CoursesTeachersGetResource :<|> (CoursesTeachersCreateResource :<|> (CoursesTeachersDeleteResource :<|> (CoursesAliasesListResource :<|> (CoursesAliasesCreateResource :<|> (CoursesAliasesDeleteResource :<|> (CoursesStudentsListResource :<|> (CoursesStudentsGetResource :<|> (CoursesStudentsCreateResource :<|> (CoursesStudentsDeleteResource :<|> (CoursesListResource :<|> (CoursesPatchResource :<|> (CoursesGetResource :<|> (CoursesCreateResource :<|> (CoursesDeleteResource :<|> (CoursesUpdateResource :<|> (UserProFilesGuardiansListResource :<|> (UserProFilesGuardiansGetResource :<|> (UserProFilesGuardiansDeleteResource :<|> (UserProFilesGuardianInvitationsListResource :<|> (UserProFilesGuardianInvitationsPatchResource :<|> (UserProFilesGuardianInvitationsGetResource :<|> (UserProFilesGuardianInvitationsCreateResource :<|> UserProFilesGetResource))))))))))))))))))))))))))))))))))))))))
+ Network.Google.Classroom: type ClassroomAPI = InvitationsListResource :<|> InvitationsAcceptResource :<|> InvitationsGetResource :<|> InvitationsCreateResource :<|> InvitationsDeleteResource :<|> CoursesCourseWorkStudentSubmissionsReturnResource :<|> CoursesCourseWorkStudentSubmissionsListResource :<|> CoursesCourseWorkStudentSubmissionsReclaimResource :<|> CoursesCourseWorkStudentSubmissionsPatchResource :<|> CoursesCourseWorkStudentSubmissionsGetResource :<|> CoursesCourseWorkStudentSubmissionsTurnInResource :<|> CoursesCourseWorkStudentSubmissionsModifyAttachmentsResource :<|> CoursesCourseWorkListResource :<|> CoursesCourseWorkPatchResource :<|> CoursesCourseWorkGetResource :<|> CoursesCourseWorkCreateResource :<|> CoursesCourseWorkModifyAssigneesResource :<|> CoursesCourseWorkDeleteResource :<|> CoursesTeachersListResource :<|> CoursesTeachersGetResource :<|> CoursesTeachersCreateResource :<|> CoursesTeachersDeleteResource :<|> CoursesAnnouncementsListResource :<|> CoursesAnnouncementsPatchResource :<|> CoursesAnnouncementsGetResource :<|> CoursesAnnouncementsCreateResource :<|> CoursesAnnouncementsModifyAssigneesResource :<|> CoursesAnnouncementsDeleteResource :<|> CoursesAliasesListResource :<|> CoursesAliasesCreateResource :<|> CoursesAliasesDeleteResource :<|> CoursesStudentsListResource :<|> CoursesStudentsGetResource :<|> CoursesStudentsCreateResource :<|> CoursesStudentsDeleteResource :<|> CoursesListResource :<|> CoursesPatchResource :<|> CoursesGetResource :<|> CoursesCreateResource :<|> CoursesDeleteResource :<|> CoursesUpdateResource :<|> UserProFilesGuardiansListResource :<|> UserProFilesGuardiansGetResource :<|> UserProFilesGuardiansDeleteResource :<|> UserProFilesGuardianInvitationsListResource :<|> UserProFilesGuardianInvitationsPatchResource :<|> UserProFilesGuardianInvitationsGetResource :<|> UserProFilesGuardianInvitationsCreateResource :<|> UserProFilesGetResource :<|> RegistrationsCreateResource :<|> RegistrationsDeleteResource
- Network.Google.Classroom.Types: cwCreationTime :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom.Types: cwCreationTime :: Lens' CourseWork (Maybe UTCTime)
- Network.Google.Classroom.Types: cwState :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom.Types: cwState :: Lens' CourseWork (Maybe CourseWorkState)
- Network.Google.Classroom.Types: cwSubmissionModificationMode :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom.Types: cwSubmissionModificationMode :: Lens' CourseWork (Maybe CourseWorkSubmissionModificationMode)
- Network.Google.Classroom.Types: cwUpdateTime :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom.Types: cwUpdateTime :: Lens' CourseWork (Maybe UTCTime)
- Network.Google.Classroom.Types: cwWorkType :: Lens' CourseWork (Maybe Text)
+ Network.Google.Classroom.Types: cwWorkType :: Lens' CourseWork (Maybe CourseWorkWorkType)
- Network.Google.Classroom.Types: giCreationTime :: Lens' GuardianInvitation (Maybe Text)
+ Network.Google.Classroom.Types: giCreationTime :: Lens' GuardianInvitation (Maybe UTCTime)
- Network.Google.Classroom.Types: giState :: Lens' GuardianInvitation (Maybe Text)
+ Network.Google.Classroom.Types: giState :: Lens' GuardianInvitation (Maybe GuardianInvitationState)
- Network.Google.Classroom.Types: gpPermission :: Lens' GlobalPermission (Maybe Text)
+ Network.Google.Classroom.Types: gpPermission :: Lens' GlobalPermission (Maybe GlobalPermissionPermission)
- Network.Google.Classroom.Types: iRole :: Lens' Invitation (Maybe Text)
+ Network.Google.Classroom.Types: iRole :: Lens' Invitation (Maybe InvitationRole)
- Network.Google.Classroom.Types: sdfShareMode :: Lens' SharedDriveFile (Maybe Text)
+ Network.Google.Classroom.Types: sdfShareMode :: Lens' SharedDriveFile (Maybe SharedDriveFileShareMode)
- Network.Google.Classroom.Types: ssCourseWorkType :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom.Types: ssCourseWorkType :: Lens' StudentSubmission (Maybe StudentSubmissionCourseWorkType)
- Network.Google.Classroom.Types: ssCreationTime :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom.Types: ssCreationTime :: Lens' StudentSubmission (Maybe UTCTime)
- Network.Google.Classroom.Types: ssState :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom.Types: ssState :: Lens' StudentSubmission (Maybe StudentSubmissionState)
- Network.Google.Classroom.Types: ssUpdateTime :: Lens' StudentSubmission (Maybe Text)
+ Network.Google.Classroom.Types: ssUpdateTime :: Lens' StudentSubmission (Maybe UTCTime)
- Network.Google.Resource.Classroom.Courses.Aliases.Create: cacXgafv :: Lens' CoursesAliasesCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.Create: cacXgafv :: Lens' CoursesAliasesCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Aliases.Create: type CoursesAliasesCreateResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("aliases" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] CourseAlias :> Post '[JSON] CourseAlias))))))))))))
+ Network.Google.Resource.Classroom.Courses.Aliases.Create: type CoursesAliasesCreateResource = "v1" :> "courses" :> Capture "courseId" Text :> "aliases" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] CourseAlias :> Post '[JSON] CourseAlias
- Network.Google.Resource.Classroom.Courses.Aliases.Delete: cadXgafv :: Lens' CoursesAliasesDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Aliases.Delete: cadXgafv :: Lens' CoursesAliasesDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Aliases.Delete: type CoursesAliasesDeleteResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("aliases" :> (Capture "alias" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))))
+ Network.Google.Resource.Classroom.Courses.Aliases.Delete: type CoursesAliasesDeleteResource = "v1" :> "courses" :> Capture "courseId" Text :> "aliases" :> Capture "alias" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.Aliases.List: type CoursesAliasesListResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("aliases" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListCourseAliasesResponse)))))))))))))
+ Network.Google.Resource.Classroom.Courses.Aliases.List: type CoursesAliasesListResource = "v1" :> "courses" :> Capture "courseId" Text :> "aliases" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListCourseAliasesResponse
- Network.Google.Resource.Classroom.Courses.CourseWork.Create: ccwcXgafv :: Lens' CoursesCourseWorkCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.Create: ccwcXgafv :: Lens' CoursesCourseWorkCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.Create: type CoursesCourseWorkCreateResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] CourseWork :> Post '[JSON] CourseWork))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.Create: type CoursesCourseWorkCreateResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] CourseWork :> Post '[JSON] CourseWork
- Network.Google.Resource.Classroom.Courses.CourseWork.Delete: ccwdXgafv :: Lens' CoursesCourseWorkDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.Delete: ccwdXgafv :: Lens' CoursesCourseWorkDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.Delete: type CoursesCourseWorkDeleteResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.Delete: type CoursesCourseWorkDeleteResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.CourseWork.Get: ccwgXgafv :: Lens' CoursesCourseWorkGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.Get: ccwgXgafv :: Lens' CoursesCourseWorkGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.Get: type CoursesCourseWorkGetResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] CourseWork))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.Get: type CoursesCourseWorkGetResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] CourseWork
- Network.Google.Resource.Classroom.Courses.CourseWork.List: ccwlXgafv :: Lens' CoursesCourseWorkList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.List: ccwlXgafv :: Lens' CoursesCourseWorkList (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.List: type CoursesCourseWorkListResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "orderBy" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParams "courseWorkStates" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListCourseWorkResponse)))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.List: type CoursesCourseWorkListResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "orderBy" Text :> QueryParam "access_token" Text :> QueryParams "courseWorkStates" Text :> QueryParam "uploadType" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListCourseWorkResponse
- Network.Google.Resource.Classroom.Courses.CourseWork.Patch: ccwpUpdateMask :: Lens' CoursesCourseWorkPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.Patch: ccwpUpdateMask :: Lens' CoursesCourseWorkPatch (Maybe GFieldMask)
- Network.Google.Resource.Classroom.Courses.CourseWork.Patch: ccwpXgafv :: Lens' CoursesCourseWorkPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.Patch: ccwpXgafv :: Lens' CoursesCourseWorkPatch (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.Patch: type CoursesCourseWorkPatchResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "updateMask" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] CourseWork :> Patch '[JSON] CourseWork))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.Patch: type CoursesCourseWorkPatchResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "updateMask" GFieldMask :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] CourseWork :> Patch '[JSON] CourseWork
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get: ccwssgXgafv :: Lens' CoursesCourseWorkStudentSubmissionsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get: ccwssgXgafv :: Lens' CoursesCourseWorkStudentSubmissionsGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get: type CoursesCourseWorkStudentSubmissionsGetResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] StudentSubmission))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get: type CoursesCourseWorkStudentSubmissionsGetResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] StudentSubmission
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List: ccwsslXgafv :: Lens' CoursesCourseWorkStudentSubmissionsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List: ccwsslXgafv :: Lens' CoursesCourseWorkStudentSubmissionsList (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List: type CoursesCourseWorkStudentSubmissionsListResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (QueryParams "states" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "late" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "userId" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListStudentSubmissionsResponse))))))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List: type CoursesCourseWorkStudentSubmissionsListResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> QueryParams "states" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "late" Text :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "userId" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListStudentSubmissionsResponse
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments: ccwssmaXgafv :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments: ccwssmaXgafv :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments: type CoursesCourseWorkStudentSubmissionsModifyAttachmentsResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (CaptureMode "id" "modifyAttachments" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] ModifyAttachmentsRequest :> Post '[JSON] StudentSubmission)))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.ModifyAttachments: type CoursesCourseWorkStudentSubmissionsModifyAttachmentsResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "modifyAttachments" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] ModifyAttachmentsRequest :> Post '[JSON] StudentSubmission
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: ccwsspUpdateMask :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: ccwsspUpdateMask :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe GFieldMask)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: ccwsspXgafv :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: ccwsspXgafv :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: type CoursesCourseWorkStudentSubmissionsPatchResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "updateMask" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] StudentSubmission :> Patch '[JSON] StudentSubmission))))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Patch: type CoursesCourseWorkStudentSubmissionsPatchResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "updateMask" GFieldMask :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] StudentSubmission :> Patch '[JSON] StudentSubmission
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: type CoursesCourseWorkStudentSubmissionsReclaimResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (CaptureMode "id" "reclaim" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] ReclaimStudentSubmissionRequest :> Post '[JSON] Empty)))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Reclaim: type CoursesCourseWorkStudentSubmissionsReclaimResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "reclaim" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] ReclaimStudentSubmissionRequest :> Post '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Return: ccwssrXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReturn (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Return: ccwssrXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReturn (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Return: type CoursesCourseWorkStudentSubmissionsReturnResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (CaptureMode "id" "return" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] ReturnStudentSubmissionRequest :> Post '[JSON] Empty)))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Return: type CoursesCourseWorkStudentSubmissionsReturnResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "return" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] ReturnStudentSubmissionRequest :> Post '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.TurnIn: ccwsstiXgafv :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.TurnIn: ccwsstiXgafv :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.TurnIn: type CoursesCourseWorkStudentSubmissionsTurnInResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("courseWork" :> (Capture "courseWorkId" Text :> ("studentSubmissions" :> (CaptureMode "id" "turnIn" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] TurnInStudentSubmissionRequest :> Post '[JSON] Empty)))))))))))))))
+ Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.TurnIn: type CoursesCourseWorkStudentSubmissionsTurnInResource = "v1" :> "courses" :> Capture "courseId" Text :> "courseWork" :> Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "turnIn" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] TurnInStudentSubmissionRequest :> Post '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.Create: ccXgafv :: Lens' CoursesCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Create: ccXgafv :: Lens' CoursesCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Create: type CoursesCreateResource = "v1" :> ("courses" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Course :> Post '[JSON] Course))))))))))
+ Network.Google.Resource.Classroom.Courses.Create: type CoursesCreateResource = "v1" :> "courses" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Course :> Post '[JSON] Course
- Network.Google.Resource.Classroom.Courses.Delete: cdXgafv :: Lens' CoursesDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Delete: cdXgafv :: Lens' CoursesDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Delete: type CoursesDeleteResource = "v1" :> ("courses" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))
+ Network.Google.Resource.Classroom.Courses.Delete: type CoursesDeleteResource = "v1" :> "courses" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.Get: cgXgafv :: Lens' CoursesGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Get: cgXgafv :: Lens' CoursesGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Get: type CoursesGetResource = "v1" :> ("courses" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Course))))))))))
+ Network.Google.Resource.Classroom.Courses.Get: type CoursesGetResource = "v1" :> "courses" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Course
- Network.Google.Resource.Classroom.Courses.List: clXgafv :: Lens' CoursesList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.List: clXgafv :: Lens' CoursesList (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.List: type CoursesListResource = "v1" :> ("courses" :> (QueryParam "studentId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "teacherId" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParams "courseStates" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListCoursesResponse))))))))))))))
+ Network.Google.Resource.Classroom.Courses.List: type CoursesListResource = "v1" :> "courses" :> QueryParam "studentId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "teacherId" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParams "courseStates" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListCoursesResponse
- Network.Google.Resource.Classroom.Courses.Patch: cpUpdateMask :: Lens' CoursesPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Patch: cpUpdateMask :: Lens' CoursesPatch (Maybe GFieldMask)
- Network.Google.Resource.Classroom.Courses.Patch: cpXgafv :: Lens' CoursesPatch (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Patch: cpXgafv :: Lens' CoursesPatch (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Patch: type CoursesPatchResource = "v1" :> ("courses" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "updateMask" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Course :> Patch '[JSON] Course))))))))))))
+ Network.Google.Resource.Classroom.Courses.Patch: type CoursesPatchResource = "v1" :> "courses" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "updateMask" GFieldMask :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Course :> Patch '[JSON] Course
- Network.Google.Resource.Classroom.Courses.Students.Create: cscXgafv :: Lens' CoursesStudentsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Students.Create: cscXgafv :: Lens' CoursesStudentsCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Students.Create: type CoursesStudentsCreateResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("students" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "enrollmentCode" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Student :> Post '[JSON] Student)))))))))))))
+ Network.Google.Resource.Classroom.Courses.Students.Create: type CoursesStudentsCreateResource = "v1" :> "courses" :> Capture "courseId" Text :> "students" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "enrollmentCode" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Student :> Post '[JSON] Student
- Network.Google.Resource.Classroom.Courses.Students.Delete: csdXgafv :: Lens' CoursesStudentsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Students.Delete: csdXgafv :: Lens' CoursesStudentsDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Students.Delete: type CoursesStudentsDeleteResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("students" :> (Capture "userId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))))
+ Network.Google.Resource.Classroom.Courses.Students.Delete: type CoursesStudentsDeleteResource = "v1" :> "courses" :> Capture "courseId" Text :> "students" :> Capture "userId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.Students.Get: csgXgafv :: Lens' CoursesStudentsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Students.Get: csgXgafv :: Lens' CoursesStudentsGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Students.Get: type CoursesStudentsGetResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("students" :> (Capture "userId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Student))))))))))))
+ Network.Google.Resource.Classroom.Courses.Students.Get: type CoursesStudentsGetResource = "v1" :> "courses" :> Capture "courseId" Text :> "students" :> Capture "userId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Student
- Network.Google.Resource.Classroom.Courses.Students.List: cslXgafv :: Lens' CoursesStudentsList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Students.List: cslXgafv :: Lens' CoursesStudentsList (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Students.List: type CoursesStudentsListResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("students" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListStudentsResponse)))))))))))))
+ Network.Google.Resource.Classroom.Courses.Students.List: type CoursesStudentsListResource = "v1" :> "courses" :> Capture "courseId" Text :> "students" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListStudentsResponse
- Network.Google.Resource.Classroom.Courses.Teachers.Create: ctcXgafv :: Lens' CoursesTeachersCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Teachers.Create: ctcXgafv :: Lens' CoursesTeachersCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Teachers.Create: type CoursesTeachersCreateResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("teachers" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Teacher :> Post '[JSON] Teacher))))))))))))
+ Network.Google.Resource.Classroom.Courses.Teachers.Create: type CoursesTeachersCreateResource = "v1" :> "courses" :> Capture "courseId" Text :> "teachers" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Teacher :> Post '[JSON] Teacher
- Network.Google.Resource.Classroom.Courses.Teachers.Delete: ctdXgafv :: Lens' CoursesTeachersDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Teachers.Delete: ctdXgafv :: Lens' CoursesTeachersDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Teachers.Delete: type CoursesTeachersDeleteResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("teachers" :> (Capture "userId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))))
+ Network.Google.Resource.Classroom.Courses.Teachers.Delete: type CoursesTeachersDeleteResource = "v1" :> "courses" :> Capture "courseId" Text :> "teachers" :> Capture "userId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.Courses.Teachers.Get: ctgXgafv :: Lens' CoursesTeachersGet (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Teachers.Get: ctgXgafv :: Lens' CoursesTeachersGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Teachers.Get: type CoursesTeachersGetResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("teachers" :> (Capture "userId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Teacher))))))))))))
+ Network.Google.Resource.Classroom.Courses.Teachers.Get: type CoursesTeachersGetResource = "v1" :> "courses" :> Capture "courseId" Text :> "teachers" :> Capture "userId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Teacher
- Network.Google.Resource.Classroom.Courses.Teachers.List: ctlXgafv :: Lens' CoursesTeachersList (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Teachers.List: ctlXgafv :: Lens' CoursesTeachersList (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Teachers.List: type CoursesTeachersListResource = "v1" :> ("courses" :> (Capture "courseId" Text :> ("teachers" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListTeachersResponse)))))))))))))
+ Network.Google.Resource.Classroom.Courses.Teachers.List: type CoursesTeachersListResource = "v1" :> "courses" :> Capture "courseId" Text :> "teachers" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListTeachersResponse
- Network.Google.Resource.Classroom.Courses.Update: cuXgafv :: Lens' CoursesUpdate (Maybe Text)
+ Network.Google.Resource.Classroom.Courses.Update: cuXgafv :: Lens' CoursesUpdate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Courses.Update: type CoursesUpdateResource = "v1" :> ("courses" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Course :> Put '[JSON] Course)))))))))))
+ Network.Google.Resource.Classroom.Courses.Update: type CoursesUpdateResource = "v1" :> "courses" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Course :> Put '[JSON] Course
- Network.Google.Resource.Classroom.Invitations.Accept: iaXgafv :: Lens' InvitationsAccept (Maybe Text)
+ Network.Google.Resource.Classroom.Invitations.Accept: iaXgafv :: Lens' InvitationsAccept (Maybe Xgafv)
- Network.Google.Resource.Classroom.Invitations.Accept: type InvitationsAcceptResource = "v1" :> ("invitations" :> (CaptureMode "id" "accept" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Post '[JSON] Empty))))))))))
+ Network.Google.Resource.Classroom.Invitations.Accept: type InvitationsAcceptResource = "v1" :> "invitations" :> CaptureMode "id" "accept" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Post '[JSON] Empty
- Network.Google.Resource.Classroom.Invitations.Create: icXgafv :: Lens' InvitationsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.Invitations.Create: icXgafv :: Lens' InvitationsCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.Invitations.Create: type InvitationsCreateResource = "v1" :> ("invitations" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] Invitation :> Post '[JSON] Invitation))))))))))
+ Network.Google.Resource.Classroom.Invitations.Create: type InvitationsCreateResource = "v1" :> "invitations" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] Invitation :> Post '[JSON] Invitation
- Network.Google.Resource.Classroom.Invitations.Delete: idXgafv :: Lens' InvitationsDelete (Maybe Text)
+ Network.Google.Resource.Classroom.Invitations.Delete: idXgafv :: Lens' InvitationsDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.Invitations.Delete: type InvitationsDeleteResource = "v1" :> ("invitations" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))
+ Network.Google.Resource.Classroom.Invitations.Delete: type InvitationsDeleteResource = "v1" :> "invitations" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.Invitations.Get: igXgafv :: Lens' InvitationsGet (Maybe Text)
+ Network.Google.Resource.Classroom.Invitations.Get: igXgafv :: Lens' InvitationsGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.Invitations.Get: type InvitationsGetResource = "v1" :> ("invitations" :> (Capture "id" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Invitation))))))))))
+ Network.Google.Resource.Classroom.Invitations.Get: type InvitationsGetResource = "v1" :> "invitations" :> Capture "id" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Invitation
- Network.Google.Resource.Classroom.Invitations.List: ilXgafv :: Lens' InvitationsList (Maybe Text)
+ Network.Google.Resource.Classroom.Invitations.List: ilXgafv :: Lens' InvitationsList (Maybe Xgafv)
- Network.Google.Resource.Classroom.Invitations.List: type InvitationsListResource = "v1" :> ("invitations" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "courseId" Text :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "userId" Text :> (QueryParam "bearer_token" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListInvitationsResponse)))))))))))))
+ Network.Google.Resource.Classroom.Invitations.List: type InvitationsListResource = "v1" :> "invitations" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "courseId" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "userId" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListInvitationsResponse
- Network.Google.Resource.Classroom.UserProFiles.Get: type UserProFilesGetResource = "v1" :> ("userProfiles" :> (Capture "userId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] UserProFile))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.Get: type UserProFilesGetResource = "v1" :> "userProfiles" :> Capture "userId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] UserProFile
- Network.Google.Resource.Classroom.UserProFiles.Get: upfgXgafv :: Lens' UserProFilesGet (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.Get: upfgXgafv :: Lens' UserProFilesGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create: type UserProFilesGuardianInvitationsCreateResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardianInvitations" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] GuardianInvitation :> Post '[JSON] GuardianInvitation))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create: type UserProFilesGuardianInvitationsCreateResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardianInvitations" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] GuardianInvitation :> Post '[JSON] GuardianInvitation
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create: upfgicXgafv :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create: upfgicXgafv :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get: type UserProFilesGuardianInvitationsGetResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardianInvitations" :> (Capture "invitationId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] GuardianInvitation))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get: type UserProFilesGuardianInvitationsGetResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardianInvitations" :> Capture "invitationId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] GuardianInvitation
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get: upfgigXgafv :: Lens' UserProFilesGuardianInvitationsGet (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get: upfgigXgafv :: Lens' UserProFilesGuardianInvitationsGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.List: type UserProFilesGuardianInvitationsListResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardianInvitations" :> (QueryParams "states" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "invitedEmailAddress" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListGuardianInvitationsResponse)))))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.List: type UserProFilesGuardianInvitationsListResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardianInvitations" :> QueryParams "states" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "invitedEmailAddress" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListGuardianInvitationsResponse
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.List: upfgilXgafv :: Lens' UserProFilesGuardianInvitationsList (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.List: upfgilXgafv :: Lens' UserProFilesGuardianInvitationsList (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: type UserProFilesGuardianInvitationsPatchResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardianInvitations" :> (Capture "invitationId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "updateMask" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] GuardianInvitation :> Patch '[JSON] GuardianInvitation))))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: type UserProFilesGuardianInvitationsPatchResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardianInvitations" :> Capture "invitationId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "updateMask" GFieldMask :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> ReqBody '[JSON] GuardianInvitation :> Patch '[JSON] GuardianInvitation
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: upfgipUpdateMask :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: upfgipUpdateMask :: Lens' UserProFilesGuardianInvitationsPatch (Maybe GFieldMask)
- Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: upfgipXgafv :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Patch: upfgipXgafv :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Delete: type UserProFilesGuardiansDeleteResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardians" :> (Capture "guardianId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Delete '[JSON] Empty))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.Guardians.Delete: type UserProFilesGuardiansDeleteResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardians" :> Capture "guardianId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Delete '[JSON] Empty
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Delete: upfgdXgafv :: Lens' UserProFilesGuardiansDelete (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.Guardians.Delete: upfgdXgafv :: Lens' UserProFilesGuardiansDelete (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Get: type UserProFilesGuardiansGetResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardians" :> (Capture "guardianId" Text :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] Guardian))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.Guardians.Get: type UserProFilesGuardiansGetResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardians" :> Capture "guardianId" Text :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] Guardian
- Network.Google.Resource.Classroom.UserProFiles.Guardians.Get: upfggXgafv :: Lens' UserProFilesGuardiansGet (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.Guardians.Get: upfggXgafv :: Lens' UserProFilesGuardiansGet (Maybe Xgafv)
- Network.Google.Resource.Classroom.UserProFiles.Guardians.List: type UserProFilesGuardiansListResource = "v1" :> ("userProfiles" :> (Capture "studentId" Text :> ("guardians" :> (QueryParam "$.xgafv" Text :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "invitedEmailAddress" Text :> (QueryParam "pageToken" Text :> (QueryParam "pageSize" (Textual Int32) :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> Get '[JSON] ListGuardiansResponse))))))))))))))
+ Network.Google.Resource.Classroom.UserProFiles.Guardians.List: type UserProFilesGuardiansListResource = "v1" :> "userProfiles" :> Capture "studentId" Text :> "guardians" :> QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "access_token" Text :> QueryParam "uploadType" Text :> QueryParam "invitedEmailAddress" Text :> QueryParam "pageToken" Text :> QueryParam "pageSize" (Textual Int32) :> QueryParam "callback" Text :> QueryParam "alt" AltJSON :> Get '[JSON] ListGuardiansResponse
- Network.Google.Resource.Classroom.UserProFiles.Guardians.List: upfglXgafv :: Lens' UserProFilesGuardiansList (Maybe Text)
+ Network.Google.Resource.Classroom.UserProFiles.Guardians.List: upfglXgafv :: Lens' UserProFilesGuardiansList (Maybe Xgafv)
Files
- gen/Network/Google/Classroom.hs +229/−18
- gen/Network/Google/Classroom/Types.hs +207/−22
- gen/Network/Google/Classroom/Types/Product.hs +3802/−2794
- gen/Network/Google/Classroom/Types/Sum.hs +770/−1
- gen/Network/Google/Resource/Classroom/Courses/Aliases/Create.hs +17/−35
- gen/Network/Google/Resource/Classroom/Courses/Aliases/Delete.hs +13/−33
- gen/Network/Google/Resource/Classroom/Courses/Aliases/List.hs +77/−99
- gen/Network/Google/Resource/Classroom/Courses/Announcements/Create.hs +175/−0
- gen/Network/Google/Resource/Classroom/Courses/Announcements/Delete.hs +175/−0
- gen/Network/Google/Resource/Classroom/Courses/Announcements/Get.hs +168/−0
- gen/Network/Google/Resource/Classroom/Courses/Announcements/List.hs +224/−0
- gen/Network/Google/Resource/Classroom/Courses/Announcements/ModifyAssignees.hs +191/−0
- gen/Network/Google/Resource/Classroom/Courses/Announcements/Patch.hs +206/−0
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/Create.hs +8/−33
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/Delete.hs +7/−31
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/Get.hs +8/−33
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/List.hs +12/−37
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/ModifyAssignees.hs +191/−0
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/Patch.hs +13/−37
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Get.hs +8/−32
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/List.hs +13/−37
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/ModifyAttachments.hs +9/−34
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Patch.hs +12/−36
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Reclaim.hs +91/−110
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Return.hs +9/−34
- gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/TurnIn.hs +9/−35
- gen/Network/Google/Resource/Classroom/Courses/Create.hs +9/−33
- gen/Network/Google/Resource/Classroom/Courses/Delete.hs +8/−32
- gen/Network/Google/Resource/Classroom/Courses/Get.hs +8/−32
- gen/Network/Google/Resource/Classroom/Courses/List.hs +26/−45
- gen/Network/Google/Resource/Classroom/Courses/Patch.hs +16/−38
- gen/Network/Google/Resource/Classroom/Courses/Students/Create.hs +9/−33
- gen/Network/Google/Resource/Classroom/Courses/Students/Delete.hs +7/−31
- gen/Network/Google/Resource/Classroom/Courses/Students/Get.hs +7/−31
- gen/Network/Google/Resource/Classroom/Courses/Students/List.hs +10/−34
- gen/Network/Google/Resource/Classroom/Courses/Teachers/Create.hs +8/−32
- gen/Network/Google/Resource/Classroom/Courses/Teachers/Delete.hs +7/−31
- gen/Network/Google/Resource/Classroom/Courses/Teachers/Get.hs +7/−31
- gen/Network/Google/Resource/Classroom/Courses/Teachers/List.hs +10/−34
- gen/Network/Google/Resource/Classroom/Courses/Update.hs +9/−33
- gen/Network/Google/Resource/Classroom/Invitations/Accept.hs +8/−32
- gen/Network/Google/Resource/Classroom/Invitations/Create.hs +9/−33
- gen/Network/Google/Resource/Classroom/Invitations/Delete.hs +8/−32
- gen/Network/Google/Resource/Classroom/Invitations/Get.hs +8/−32
- gen/Network/Google/Resource/Classroom/Invitations/List.hs +13/−37
- gen/Network/Google/Resource/Classroom/Registrations/Create.hs +186/−0
- gen/Network/Google/Resource/Classroom/Registrations/Delete.hs +148/−0
- gen/Network/Google/Resource/Classroom/UserProFiles/Get.hs +7/−31
- gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Create.hs +10/−34
- gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Get.hs +11/−33
- gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/List.hs +14/−36
- gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Patch.hs +13/−37
- gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/Delete.hs +9/−32
- gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/Get.hs +11/−32
- gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/List.hs +15/−36
- gogol-classroom.cabal +11/−2
gen/Network/Google/Classroom.hs view
@@ -24,17 +24,22 @@ -- * OAuth Scopes , classroomRostersReadOnlyScope , classroomCoursesScope+ , classroomPushNotificationsScope , classroomCourseworkStudentsReadOnlyScope , classroomProFileEmailsScope , classroomProFilePhotosScope , classroomCourseworkMeScope- , classroomCourseWorkReadOnlyScope+ , classroomAnnouncementsReadOnlyScope+ , classroomGuardianlinksStudentsScope , classroomStudentSubmissionsStudentsReadOnlyScope+ , classroomGuardianlinksMeReadOnlyScope , classroomRostersScope , classroomCoursesReadOnlyScope , classroomCourseworkStudentsScope+ , classroomAnnouncementsScope , classroomCourseworkMeReadOnlyScope , classroomStudentSubmissionsMeReadOnlyScope+ , classroomGuardianlinksStudentsReadOnlyScope -- * API Declaration , ClassroomAPI@@ -50,6 +55,24 @@ -- ** classroom.courses.aliases.list , module Network.Google.Resource.Classroom.Courses.Aliases.List + -- ** classroom.courses.announcements.create+ , module Network.Google.Resource.Classroom.Courses.Announcements.Create++ -- ** classroom.courses.announcements.delete+ , module Network.Google.Resource.Classroom.Courses.Announcements.Delete++ -- ** classroom.courses.announcements.get+ , module Network.Google.Resource.Classroom.Courses.Announcements.Get++ -- ** classroom.courses.announcements.list+ , module Network.Google.Resource.Classroom.Courses.Announcements.List++ -- ** classroom.courses.announcements.modifyAssignees+ , module Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees++ -- ** classroom.courses.announcements.patch+ , module Network.Google.Resource.Classroom.Courses.Announcements.Patch+ -- ** classroom.courses.courseWork.create , module Network.Google.Resource.Classroom.Courses.CourseWork.Create @@ -62,6 +85,9 @@ -- ** classroom.courses.courseWork.list , module Network.Google.Resource.Classroom.Courses.CourseWork.List + -- ** classroom.courses.courseWork.modifyAssignees+ , module Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees+ -- ** classroom.courses.courseWork.patch , module Network.Google.Resource.Classroom.Courses.CourseWork.Patch @@ -143,6 +169,12 @@ -- ** classroom.invitations.list , module Network.Google.Resource.Classroom.Invitations.List + -- ** classroom.registrations.create+ , module Network.Google.Resource.Classroom.Registrations.Create++ -- ** classroom.registrations.delete+ , module Network.Google.Resource.Classroom.Registrations.Delete+ -- ** classroom.userProfiles.get , module Network.Google.Resource.Classroom.UserProFiles.Get @@ -179,9 +211,12 @@ , CourseWork , courseWork , cwCreationTime+ , cwScheduledTime , cwState+ , cwAssigneeMode , cwMaterials , cwCourseId+ , cwIndividualStudentsOptions , cwMaxPoints , cwWorkType , cwDueTime@@ -191,11 +226,38 @@ , cwId , cwSubmissionModificationMode , cwDueDate+ , cwCreatorUserId , cwTitle , cwAlternateLink , cwAssignment , cwDescription + -- ** GradeHistoryGradeChangeType+ , GradeHistoryGradeChangeType (..)++ -- ** GradeHistory+ , GradeHistory+ , gradeHistory+ , ghGradeTimestamp+ , ghMaxPoints+ , ghPointsEarned+ , ghActorUserId+ , ghGradeChangeType++ -- ** CourseWorkChangesInfo+ , CourseWorkChangesInfo+ , courseWorkChangesInfo+ , cwciCourseId++ -- ** ModifyCourseWorkAssigneesRequest+ , ModifyCourseWorkAssigneesRequest+ , modifyCourseWorkAssigneesRequest+ , mcwarAssigneeMode+ , mcwarModifyIndividualStudentsOptions++ -- ** CourseCourseState+ , CourseCourseState (..)+ -- ** DriveFile , DriveFile , driveFile@@ -213,14 +275,33 @@ , giInvitationId , giInvitedEmailAddress + -- ** Feed+ , Feed+ , feed+ , fCourseWorkChangesInfo+ , fFeedType+ , fCourseRosterChangesInfo++ -- ** ModifyAnnouncementAssigneesRequest+ , ModifyAnnouncementAssigneesRequest+ , modifyAnnouncementAssigneesRequest+ , maarAssigneeMode+ , maarModifyIndividualStudentsOptions+ -- ** ReturnStudentSubmissionRequest , ReturnStudentSubmissionRequest , returnStudentSubmissionRequest + -- ** StateHistoryState+ , StateHistoryState (..)+ -- ** ReclaimStudentSubmissionRequest , ReclaimStudentSubmissionRequest , reclaimStudentSubmissionRequest + -- ** CourseWorkWorkType+ , CourseWorkWorkType (..)+ -- ** ListCourseWorkResponse , ListCourseWorkResponse , listCourseWorkResponse@@ -231,6 +312,15 @@ , Empty , empty + -- ** ModifyCourseWorkAssigneesRequestAssigneeMode+ , ModifyCourseWorkAssigneesRequestAssigneeMode (..)++ -- ** GuardianInvitationState+ , GuardianInvitationState (..)++ -- ** SharedDriveFileShareMode+ , SharedDriveFileShareMode (..)+ -- ** GlobalPermission , GlobalPermission , globalPermission@@ -243,6 +333,14 @@ , lURL , lTitle + -- ** ModifyAnnouncementAssigneesRequestAssigneeMode+ , ModifyAnnouncementAssigneesRequestAssigneeMode (..)++ -- ** IndividualStudentsOptions+ , IndividualStudentsOptions+ , individualStudentsOptions+ , isoStudentIds+ -- ** AssignmentSubmission , AssignmentSubmission , assignmentSubmission@@ -253,6 +351,18 @@ , modifyAttachmentsRequest , marAddAttachments + -- ** ListAnnouncementsResponse+ , ListAnnouncementsResponse+ , listAnnouncementsResponse+ , larNextPageToken+ , larAnnouncements++ -- ** AnnouncementAssigneeMode+ , AnnouncementAssigneeMode (..)++ -- ** CourseWorkState+ , CourseWorkState (..)+ -- ** ListStudentSubmissionsResponse , ListStudentSubmissionsResponse , listStudentSubmissionsResponse@@ -294,11 +404,17 @@ , cmYouTubeVideo , cmForm + -- ** StudentSubmissionState+ , StudentSubmissionState (..)+ -- ** ShortAnswerSubmission , ShortAnswerSubmission , shortAnswerSubmission , sasAnswer + -- ** AnnouncementState+ , AnnouncementState (..)+ -- ** Invitation , Invitation , invitation@@ -315,6 +431,22 @@ , aYouTubeVideo , aForm + -- ** Announcement+ , Announcement+ , announcement+ , aCreationTime+ , aScheduledTime+ , aState+ , aAssigneeMode+ , aText+ , aMaterials+ , aCourseId+ , aIndividualStudentsOptions+ , aUpdateTime+ , aId+ , aCreatorUserId+ , aAlternateLink+ -- ** StudentSubmission , StudentSubmission , studentSubmission@@ -329,6 +461,7 @@ , ssUserId , ssUpdateTime , ssCourseWorkType+ , ssSubmissionHistory , ssAssignedGrade , ssId , ssDraftGrade@@ -386,10 +519,14 @@ , TurnInStudentSubmissionRequest , turnInStudentSubmissionRequest + -- ** Xgafv+ , Xgafv (..)+ -- ** UserProFile , UserProFile , userProFile , upfPhotoURL+ , upfVerifiedTeacher , upfName , upfEmailAddress , upfId@@ -402,6 +539,19 @@ , dTitle , dAlternateLink + -- ** SubmissionHistory+ , SubmissionHistory+ , submissionHistory+ , shGradeHistory+ , shStateHistory++ -- ** StateHistory+ , StateHistory+ , stateHistory+ , shState+ , shActorUserId+ , shStateTimestamp+ -- ** MultipleChoiceQuestion , MultipleChoiceQuestion , multipleChoiceQuestion@@ -410,24 +560,31 @@ -- ** Course , Course , course- , cCreationTime- , cRoom- , cCourseMaterialSets- , cTeacherGroupEmail- , cTeacherFolder- , cCourseState- , cGuardiansEnabled- , cEnrollmentCode- , cUpdateTime- , cOwnerId- , cName- , cId- , cAlternateLink- , cCourseGroupEmail- , cDescription- , cDescriptionHeading- , cSection+ , couCreationTime+ , couRoom+ , couCourseMaterialSets+ , couCalendarId+ , couTeacherGroupEmail+ , couTeacherFolder+ , couCourseState+ , couGuardiansEnabled+ , couEnrollmentCode+ , couUpdateTime+ , couOwnerId+ , couName+ , couId+ , couAlternateLink+ , couCourseGroupEmail+ , couDescription+ , couDescriptionHeading+ , couSection + -- ** InvitationRole+ , InvitationRole (..)++ -- ** StudentSubmissionCourseWorkType+ , StudentSubmissionCourseWorkType (..)+ -- ** TimeOfDay' , TimeOfDay' , timeOfDay@@ -436,6 +593,9 @@ , todMinutes , todSeconds + -- ** FeedFeedType+ , FeedFeedType (..)+ -- ** ListGuardianInvitationsResponse , ListGuardianInvitationsResponse , listGuardianInvitationsResponse@@ -464,6 +624,28 @@ , courseAlias , caAlias + -- ** CourseRosterChangesInfo+ , CourseRosterChangesInfo+ , courseRosterChangesInfo+ , crciCourseId++ -- ** ModifyIndividualStudentsOptions+ , ModifyIndividualStudentsOptions+ , modifyIndividualStudentsOptions+ , misoAddStudentIds+ , misoRemoveStudentIds++ -- ** CloudPubsubTopic+ , CloudPubsubTopic+ , cloudPubsubTopic+ , cptTopicName++ -- ** GlobalPermissionPermission+ , GlobalPermissionPermission (..)++ -- ** CourseWorkAssigneeMode+ , CourseWorkAssigneeMode (..)+ -- ** Form , Form , form@@ -485,6 +667,17 @@ , sProFile , sStudentWorkFolder , sUserId++ -- ** CourseWorkSubmissionModificationMode+ , CourseWorkSubmissionModificationMode (..)++ -- ** Registration+ , Registration+ , registration+ , rRegistrationId+ , rExpiryTime+ , rFeed+ , rCloudPubsubTopic ) where import Network.Google.Classroom.Types@@ -492,10 +685,17 @@ import Network.Google.Resource.Classroom.Courses.Aliases.Create import Network.Google.Resource.Classroom.Courses.Aliases.Delete import Network.Google.Resource.Classroom.Courses.Aliases.List+import Network.Google.Resource.Classroom.Courses.Announcements.Create+import Network.Google.Resource.Classroom.Courses.Announcements.Delete+import Network.Google.Resource.Classroom.Courses.Announcements.Get+import Network.Google.Resource.Classroom.Courses.Announcements.List+import Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees+import Network.Google.Resource.Classroom.Courses.Announcements.Patch import Network.Google.Resource.Classroom.Courses.CourseWork.Create import Network.Google.Resource.Classroom.Courses.CourseWork.Delete import Network.Google.Resource.Classroom.Courses.CourseWork.Get import Network.Google.Resource.Classroom.Courses.CourseWork.List+import Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees import Network.Google.Resource.Classroom.Courses.CourseWork.Patch import Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get import Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List@@ -523,6 +723,8 @@ import Network.Google.Resource.Classroom.Invitations.Delete import Network.Google.Resource.Classroom.Invitations.Get import Network.Google.Resource.Classroom.Invitations.List+import Network.Google.Resource.Classroom.Registrations.Create+import Network.Google.Resource.Classroom.Registrations.Delete import Network.Google.Resource.Classroom.UserProFiles.Get import Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create import Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get@@ -558,11 +760,18 @@ :<|> CoursesCourseWorkPatchResource :<|> CoursesCourseWorkGetResource :<|> CoursesCourseWorkCreateResource+ :<|> CoursesCourseWorkModifyAssigneesResource :<|> CoursesCourseWorkDeleteResource :<|> CoursesTeachersListResource :<|> CoursesTeachersGetResource :<|> CoursesTeachersCreateResource :<|> CoursesTeachersDeleteResource+ :<|> CoursesAnnouncementsListResource+ :<|> CoursesAnnouncementsPatchResource+ :<|> CoursesAnnouncementsGetResource+ :<|> CoursesAnnouncementsCreateResource+ :<|> CoursesAnnouncementsModifyAssigneesResource+ :<|> CoursesAnnouncementsDeleteResource :<|> CoursesAliasesListResource :<|> CoursesAliasesCreateResource :<|> CoursesAliasesDeleteResource@@ -584,3 +793,5 @@ :<|> UserProFilesGuardianInvitationsGetResource :<|> UserProFilesGuardianInvitationsCreateResource :<|> UserProFilesGetResource+ :<|> RegistrationsCreateResource+ :<|> RegistrationsDeleteResource
gen/Network/Google/Classroom/Types.hs view
@@ -22,17 +22,22 @@ -- * OAuth Scopes , classroomRostersReadOnlyScope , classroomCoursesScope+ , classroomPushNotificationsScope , classroomCourseworkStudentsReadOnlyScope , classroomProFileEmailsScope , classroomProFilePhotosScope , classroomCourseworkMeScope- , classroomCourseWorkReadOnlyScope+ , classroomAnnouncementsReadOnlyScope+ , classroomGuardianlinksStudentsScope , classroomStudentSubmissionsStudentsReadOnlyScope+ , classroomGuardianlinksMeReadOnlyScope , classroomRostersScope , classroomCoursesReadOnlyScope , classroomCourseworkStudentsScope+ , classroomAnnouncementsScope , classroomCourseworkMeReadOnlyScope , classroomStudentSubmissionsMeReadOnlyScope+ , classroomGuardianlinksStudentsReadOnlyScope -- * ListCourseAliasesResponse , ListCourseAliasesResponse@@ -44,9 +49,12 @@ , CourseWork , courseWork , cwCreationTime+ , cwScheduledTime , cwState+ , cwAssigneeMode , cwMaterials , cwCourseId+ , cwIndividualStudentsOptions , cwMaxPoints , cwWorkType , cwDueTime@@ -56,11 +64,38 @@ , cwId , cwSubmissionModificationMode , cwDueDate+ , cwCreatorUserId , cwTitle , cwAlternateLink , cwAssignment , cwDescription + -- * GradeHistoryGradeChangeType+ , GradeHistoryGradeChangeType (..)++ -- * GradeHistory+ , GradeHistory+ , gradeHistory+ , ghGradeTimestamp+ , ghMaxPoints+ , ghPointsEarned+ , ghActorUserId+ , ghGradeChangeType++ -- * CourseWorkChangesInfo+ , CourseWorkChangesInfo+ , courseWorkChangesInfo+ , cwciCourseId++ -- * ModifyCourseWorkAssigneesRequest+ , ModifyCourseWorkAssigneesRequest+ , modifyCourseWorkAssigneesRequest+ , mcwarAssigneeMode+ , mcwarModifyIndividualStudentsOptions++ -- * CourseCourseState+ , CourseCourseState (..)+ -- * DriveFile , DriveFile , driveFile@@ -78,14 +113,33 @@ , giInvitationId , giInvitedEmailAddress + -- * Feed+ , Feed+ , feed+ , fCourseWorkChangesInfo+ , fFeedType+ , fCourseRosterChangesInfo++ -- * ModifyAnnouncementAssigneesRequest+ , ModifyAnnouncementAssigneesRequest+ , modifyAnnouncementAssigneesRequest+ , maarAssigneeMode+ , maarModifyIndividualStudentsOptions+ -- * ReturnStudentSubmissionRequest , ReturnStudentSubmissionRequest , returnStudentSubmissionRequest + -- * StateHistoryState+ , StateHistoryState (..)+ -- * ReclaimStudentSubmissionRequest , ReclaimStudentSubmissionRequest , reclaimStudentSubmissionRequest + -- * CourseWorkWorkType+ , CourseWorkWorkType (..)+ -- * ListCourseWorkResponse , ListCourseWorkResponse , listCourseWorkResponse@@ -96,6 +150,15 @@ , Empty , empty + -- * ModifyCourseWorkAssigneesRequestAssigneeMode+ , ModifyCourseWorkAssigneesRequestAssigneeMode (..)++ -- * GuardianInvitationState+ , GuardianInvitationState (..)++ -- * SharedDriveFileShareMode+ , SharedDriveFileShareMode (..)+ -- * GlobalPermission , GlobalPermission , globalPermission@@ -108,6 +171,14 @@ , lURL , lTitle + -- * ModifyAnnouncementAssigneesRequestAssigneeMode+ , ModifyAnnouncementAssigneesRequestAssigneeMode (..)++ -- * IndividualStudentsOptions+ , IndividualStudentsOptions+ , individualStudentsOptions+ , isoStudentIds+ -- * AssignmentSubmission , AssignmentSubmission , assignmentSubmission@@ -118,6 +189,18 @@ , modifyAttachmentsRequest , marAddAttachments + -- * ListAnnouncementsResponse+ , ListAnnouncementsResponse+ , listAnnouncementsResponse+ , larNextPageToken+ , larAnnouncements++ -- * AnnouncementAssigneeMode+ , AnnouncementAssigneeMode (..)++ -- * CourseWorkState+ , CourseWorkState (..)+ -- * ListStudentSubmissionsResponse , ListStudentSubmissionsResponse , listStudentSubmissionsResponse@@ -159,11 +242,17 @@ , cmYouTubeVideo , cmForm + -- * StudentSubmissionState+ , StudentSubmissionState (..)+ -- * ShortAnswerSubmission , ShortAnswerSubmission , shortAnswerSubmission , sasAnswer + -- * AnnouncementState+ , AnnouncementState (..)+ -- * Invitation , Invitation , invitation@@ -180,6 +269,22 @@ , aYouTubeVideo , aForm + -- * Announcement+ , Announcement+ , announcement+ , aCreationTime+ , aScheduledTime+ , aState+ , aAssigneeMode+ , aText+ , aMaterials+ , aCourseId+ , aIndividualStudentsOptions+ , aUpdateTime+ , aId+ , aCreatorUserId+ , aAlternateLink+ -- * StudentSubmission , StudentSubmission , studentSubmission@@ -194,6 +299,7 @@ , ssUserId , ssUpdateTime , ssCourseWorkType+ , ssSubmissionHistory , ssAssignedGrade , ssId , ssDraftGrade@@ -251,10 +357,14 @@ , TurnInStudentSubmissionRequest , turnInStudentSubmissionRequest + -- * Xgafv+ , Xgafv (..)+ -- * UserProFile , UserProFile , userProFile , upfPhotoURL+ , upfVerifiedTeacher , upfName , upfEmailAddress , upfId@@ -267,6 +377,19 @@ , dTitle , dAlternateLink + -- * SubmissionHistory+ , SubmissionHistory+ , submissionHistory+ , shGradeHistory+ , shStateHistory++ -- * StateHistory+ , StateHistory+ , stateHistory+ , shState+ , shActorUserId+ , shStateTimestamp+ -- * MultipleChoiceQuestion , MultipleChoiceQuestion , multipleChoiceQuestion@@ -275,24 +398,31 @@ -- * Course , Course , course- , cCreationTime- , cRoom- , cCourseMaterialSets- , cTeacherGroupEmail- , cTeacherFolder- , cCourseState- , cGuardiansEnabled- , cEnrollmentCode- , cUpdateTime- , cOwnerId- , cName- , cId- , cAlternateLink- , cCourseGroupEmail- , cDescription- , cDescriptionHeading- , cSection+ , couCreationTime+ , couRoom+ , couCourseMaterialSets+ , couCalendarId+ , couTeacherGroupEmail+ , couTeacherFolder+ , couCourseState+ , couGuardiansEnabled+ , couEnrollmentCode+ , couUpdateTime+ , couOwnerId+ , couName+ , couId+ , couAlternateLink+ , couCourseGroupEmail+ , couDescription+ , couDescriptionHeading+ , couSection + -- * InvitationRole+ , InvitationRole (..)++ -- * StudentSubmissionCourseWorkType+ , StudentSubmissionCourseWorkType (..)+ -- * TimeOfDay' , TimeOfDay' , timeOfDay@@ -301,6 +431,9 @@ , todMinutes , todSeconds + -- * FeedFeedType+ , FeedFeedType (..)+ -- * ListGuardianInvitationsResponse , ListGuardianInvitationsResponse , listGuardianInvitationsResponse@@ -329,6 +462,28 @@ , courseAlias , caAlias + -- * CourseRosterChangesInfo+ , CourseRosterChangesInfo+ , courseRosterChangesInfo+ , crciCourseId++ -- * ModifyIndividualStudentsOptions+ , ModifyIndividualStudentsOptions+ , modifyIndividualStudentsOptions+ , misoAddStudentIds+ , misoRemoveStudentIds++ -- * CloudPubsubTopic+ , CloudPubsubTopic+ , cloudPubsubTopic+ , cptTopicName++ -- * GlobalPermissionPermission+ , GlobalPermissionPermission (..)++ -- * CourseWorkAssigneeMode+ , CourseWorkAssigneeMode (..)+ -- * Form , Form , form@@ -350,6 +505,17 @@ , sProFile , sStudentWorkFolder , sUserId++ -- * CourseWorkSubmissionModificationMode+ , CourseWorkSubmissionModificationMode (..)++ -- * Registration+ , Registration+ , registration+ , rRegistrationId+ , rExpiryTime+ , rFeed+ , rCloudPubsubTopic ) where import Network.Google.Classroom.Types.Product@@ -370,6 +536,10 @@ classroomCoursesScope :: Proxy '["https://www.googleapis.com/auth/classroom.courses"] classroomCoursesScope = Proxy; +-- | Receive notifications about your Google Classroom data+classroomPushNotificationsScope :: Proxy '["https://www.googleapis.com/auth/classroom.push-notifications"]+classroomPushNotificationsScope = Proxy;+ -- | View course work and grades for students in the Google Classroom classes -- you teach or administer classroomCourseworkStudentsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.coursework.students.readonly"]@@ -387,16 +557,23 @@ classroomCourseworkMeScope :: Proxy '["https://www.googleapis.com/auth/classroom.coursework.me"] classroomCourseworkMeScope = Proxy; --- | View instructions for teacher-assigned work in your Google Classroom--- classes-classroomCourseWorkReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.course-work.readonly"]-classroomCourseWorkReadOnlyScope = Proxy;+-- | View announcements in Google Classroom+classroomAnnouncementsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.announcements.readonly"]+classroomAnnouncementsReadOnlyScope = Proxy; +-- | View and manage guardians for students in your Google Classroom classes+classroomGuardianlinksStudentsScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.students"]+classroomGuardianlinksStudentsScope = Proxy;+ -- | View course work and grades for students in the Google Classroom classes -- you teach or administer classroomStudentSubmissionsStudentsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.student-submissions.students.readonly"] classroomStudentSubmissionsStudentsReadOnlyScope = Proxy; +-- | View your Google Classroom guardians+classroomGuardianlinksMeReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly"]+classroomGuardianlinksMeReadOnlyScope = Proxy;+ -- | Manage your Google Classroom class rosters classroomRostersScope :: Proxy '["https://www.googleapis.com/auth/classroom.rosters"] classroomRostersScope = Proxy;@@ -411,6 +588,10 @@ classroomCourseworkStudentsScope :: Proxy '["https://www.googleapis.com/auth/classroom.coursework.students"] classroomCourseworkStudentsScope = Proxy; +-- | View and manage announcements in Google Classroom+classroomAnnouncementsScope :: Proxy '["https://www.googleapis.com/auth/classroom.announcements"]+classroomAnnouncementsScope = Proxy;+ -- | View your course work and grades in Google Classroom classroomCourseworkMeReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.coursework.me.readonly"] classroomCourseworkMeReadOnlyScope = Proxy;@@ -418,3 +599,7 @@ -- | View your course work and grades in Google Classroom classroomStudentSubmissionsMeReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.student-submissions.me.readonly"] classroomStudentSubmissionsMeReadOnlyScope = Proxy;++-- | View guardians for students in your Google Classroom classes+classroomGuardianlinksStudentsReadOnlyScope :: Proxy '["https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"]+classroomGuardianlinksStudentsReadOnlyScope = Proxy;
gen/Network/Google/Classroom/Types/Product.hs view
@@ -76,2797 +76,3805 @@ -- -- /See:/ 'courseWork' smart constructor. data CourseWork = CourseWork'- { _cwCreationTime :: !(Maybe Text)- , _cwState :: !(Maybe Text)- , _cwMaterials :: !(Maybe [Material])- , _cwCourseId :: !(Maybe Text)- , _cwMaxPoints :: !(Maybe (Textual Double))- , _cwWorkType :: !(Maybe Text)- , _cwDueTime :: !(Maybe TimeOfDay')- , _cwAssociatedWithDeveloper :: !(Maybe Bool)- , _cwUpdateTime :: !(Maybe Text)- , _cwMultipleChoiceQuestion :: !(Maybe MultipleChoiceQuestion)- , _cwId :: !(Maybe Text)- , _cwSubmissionModificationMode :: !(Maybe Text)- , _cwDueDate :: !(Maybe Date)- , _cwTitle :: !(Maybe Text)- , _cwAlternateLink :: !(Maybe Text)- , _cwAssignment :: !(Maybe Assignment)- , _cwDescription :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CourseWork' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cwCreationTime'------ * 'cwState'------ * 'cwMaterials'------ * 'cwCourseId'------ * 'cwMaxPoints'------ * 'cwWorkType'------ * 'cwDueTime'------ * 'cwAssociatedWithDeveloper'------ * 'cwUpdateTime'------ * 'cwMultipleChoiceQuestion'------ * 'cwId'------ * 'cwSubmissionModificationMode'------ * 'cwDueDate'------ * 'cwTitle'------ * 'cwAlternateLink'------ * 'cwAssignment'------ * 'cwDescription'-courseWork- :: CourseWork-courseWork =- CourseWork'- { _cwCreationTime = Nothing- , _cwState = Nothing- , _cwMaterials = Nothing- , _cwCourseId = Nothing- , _cwMaxPoints = Nothing- , _cwWorkType = Nothing- , _cwDueTime = Nothing- , _cwAssociatedWithDeveloper = Nothing- , _cwUpdateTime = Nothing- , _cwMultipleChoiceQuestion = Nothing- , _cwId = Nothing- , _cwSubmissionModificationMode = Nothing- , _cwDueDate = Nothing- , _cwTitle = Nothing- , _cwAlternateLink = Nothing- , _cwAssignment = Nothing- , _cwDescription = Nothing- }---- | Timestamp when this course work was created. Read-only.-cwCreationTime :: Lens' CourseWork (Maybe Text)-cwCreationTime- = lens _cwCreationTime- (\ s a -> s{_cwCreationTime = a})---- | Status of this course work. If unspecified, the default state is--- \`DRAFT\`.-cwState :: Lens' CourseWork (Maybe Text)-cwState = lens _cwState (\ s a -> s{_cwState = a})---- | Additional materials. CourseWork must have no more than 20 material--- items.-cwMaterials :: Lens' CourseWork [Material]-cwMaterials- = lens _cwMaterials (\ s a -> s{_cwMaterials = a}) .- _Default- . _Coerce---- | Identifier of the course. Read-only.-cwCourseId :: Lens' CourseWork (Maybe Text)-cwCourseId- = lens _cwCourseId (\ s a -> s{_cwCourseId = a})---- | Maximum grade for this course work. If zero or unspecified, this--- assignment is considered ungraded. This must be a non-negative integer--- value.-cwMaxPoints :: Lens' CourseWork (Maybe Double)-cwMaxPoints- = lens _cwMaxPoints (\ s a -> s{_cwMaxPoints = a}) .- mapping _Coerce---- | Type of this course work. The type is set when the course work is--- created and cannot be changed.-cwWorkType :: Lens' CourseWork (Maybe Text)-cwWorkType- = lens _cwWorkType (\ s a -> s{_cwWorkType = a})---- | Optional time of day, in UTC, that submissions for this this course work--- are due. This must be specified if \`due_date\` is specified.-cwDueTime :: Lens' CourseWork (Maybe TimeOfDay')-cwDueTime- = lens _cwDueTime (\ s a -> s{_cwDueTime = a})---- | Whether this course work item is associated with the Developer Console--- project making the request. See google.classroom.Work.CreateCourseWork--- for more details. Read-only.-cwAssociatedWithDeveloper :: Lens' CourseWork (Maybe Bool)-cwAssociatedWithDeveloper- = lens _cwAssociatedWithDeveloper- (\ s a -> s{_cwAssociatedWithDeveloper = a})---- | Timestamp of the most recent change to this course work. Read-only.-cwUpdateTime :: Lens' CourseWork (Maybe Text)-cwUpdateTime- = lens _cwUpdateTime (\ s a -> s{_cwUpdateTime = a})---- | Multiple choice question details. For read operations, this field is--- populated only when \`work_type\` is \`MULTIPLE_CHOICE_QUESTION\`. For--- write operations, this field must be specified when creating course work--- with a \`work_type\` of \`MULTIPLE_CHOICE_QUESTION\`, and it must not be--- set otherwise.-cwMultipleChoiceQuestion :: Lens' CourseWork (Maybe MultipleChoiceQuestion)-cwMultipleChoiceQuestion- = lens _cwMultipleChoiceQuestion- (\ s a -> s{_cwMultipleChoiceQuestion = a})---- | Classroom-assigned identifier of this course work, unique per course.--- Read-only.-cwId :: Lens' CourseWork (Maybe Text)-cwId = lens _cwId (\ s a -> s{_cwId = a})---- | Setting to determine when students are allowed to modify submissions. If--- unspecified, the default value is \`MODIFIABLE_UNTIL_TURNED_IN\`.-cwSubmissionModificationMode :: Lens' CourseWork (Maybe Text)-cwSubmissionModificationMode- = lens _cwSubmissionModificationMode- (\ s a -> s{_cwSubmissionModificationMode = a})---- | Optional date, in UTC, that submissions for this this course work are--- due. This must be specified if \`due_time\` is specified.-cwDueDate :: Lens' CourseWork (Maybe Date)-cwDueDate- = lens _cwDueDate (\ s a -> s{_cwDueDate = a})---- | Title of this course work. The title must be a valid UTF-8 string--- containing between 1 and 3000 characters.-cwTitle :: Lens' CourseWork (Maybe Text)-cwTitle = lens _cwTitle (\ s a -> s{_cwTitle = a})---- | Absolute link to this course work in the Classroom web UI. This is only--- populated if \`state\` is \`PUBLISHED\`. Read-only.-cwAlternateLink :: Lens' CourseWork (Maybe Text)-cwAlternateLink- = lens _cwAlternateLink- (\ s a -> s{_cwAlternateLink = a})---- | Assignment details. This is populated only when \`work_type\` is--- \`ASSIGNMENT\`. Read-only.-cwAssignment :: Lens' CourseWork (Maybe Assignment)-cwAssignment- = lens _cwAssignment (\ s a -> s{_cwAssignment = a})---- | Optional description of this course work. If set, the description must--- be a valid UTF-8 string containing no more than 30,000 characters.-cwDescription :: Lens' CourseWork (Maybe Text)-cwDescription- = lens _cwDescription- (\ s a -> s{_cwDescription = a})--instance FromJSON CourseWork where- parseJSON- = withObject "CourseWork"- (\ o ->- CourseWork' <$>- (o .:? "creationTime") <*> (o .:? "state") <*>- (o .:? "materials" .!= mempty)- <*> (o .:? "courseId")- <*> (o .:? "maxPoints")- <*> (o .:? "workType")- <*> (o .:? "dueTime")- <*> (o .:? "associatedWithDeveloper")- <*> (o .:? "updateTime")- <*> (o .:? "multipleChoiceQuestion")- <*> (o .:? "id")- <*> (o .:? "submissionModificationMode")- <*> (o .:? "dueDate")- <*> (o .:? "title")- <*> (o .:? "alternateLink")- <*> (o .:? "assignment")- <*> (o .:? "description"))--instance ToJSON CourseWork where- toJSON CourseWork'{..}- = object- (catMaybes- [("creationTime" .=) <$> _cwCreationTime,- ("state" .=) <$> _cwState,- ("materials" .=) <$> _cwMaterials,- ("courseId" .=) <$> _cwCourseId,- ("maxPoints" .=) <$> _cwMaxPoints,- ("workType" .=) <$> _cwWorkType,- ("dueTime" .=) <$> _cwDueTime,- ("associatedWithDeveloper" .=) <$>- _cwAssociatedWithDeveloper,- ("updateTime" .=) <$> _cwUpdateTime,- ("multipleChoiceQuestion" .=) <$>- _cwMultipleChoiceQuestion,- ("id" .=) <$> _cwId,- ("submissionModificationMode" .=) <$>- _cwSubmissionModificationMode,- ("dueDate" .=) <$> _cwDueDate,- ("title" .=) <$> _cwTitle,- ("alternateLink" .=) <$> _cwAlternateLink,- ("assignment" .=) <$> _cwAssignment,- ("description" .=) <$> _cwDescription])---- | Representation of a Google Drive file.------ /See:/ 'driveFile' smart constructor.-data DriveFile = DriveFile'- { _dfThumbnailURL :: !(Maybe Text)- , _dfId :: !(Maybe Text)- , _dfTitle :: !(Maybe Text)- , _dfAlternateLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DriveFile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dfThumbnailURL'------ * 'dfId'------ * 'dfTitle'------ * 'dfAlternateLink'-driveFile- :: DriveFile-driveFile =- DriveFile'- { _dfThumbnailURL = Nothing- , _dfId = Nothing- , _dfTitle = Nothing- , _dfAlternateLink = Nothing- }---- | URL of a thumbnail image of the Drive item. Read-only.-dfThumbnailURL :: Lens' DriveFile (Maybe Text)-dfThumbnailURL- = lens _dfThumbnailURL- (\ s a -> s{_dfThumbnailURL = a})---- | Drive API resource ID.-dfId :: Lens' DriveFile (Maybe Text)-dfId = lens _dfId (\ s a -> s{_dfId = a})---- | Title of the Drive item. Read-only.-dfTitle :: Lens' DriveFile (Maybe Text)-dfTitle = lens _dfTitle (\ s a -> s{_dfTitle = a})---- | URL that can be used to access the Drive item. Read-only.-dfAlternateLink :: Lens' DriveFile (Maybe Text)-dfAlternateLink- = lens _dfAlternateLink- (\ s a -> s{_dfAlternateLink = a})--instance FromJSON DriveFile where- parseJSON- = withObject "DriveFile"- (\ o ->- DriveFile' <$>- (o .:? "thumbnailUrl") <*> (o .:? "id") <*>- (o .:? "title")- <*> (o .:? "alternateLink"))--instance ToJSON DriveFile where- toJSON DriveFile'{..}- = object- (catMaybes- [("thumbnailUrl" .=) <$> _dfThumbnailURL,- ("id" .=) <$> _dfId, ("title" .=) <$> _dfTitle,- ("alternateLink" .=) <$> _dfAlternateLink])---- | An invitation to become the guardian of a specified user, sent to a--- specified email address.------ /See:/ 'guardianInvitation' smart constructor.-data GuardianInvitation = GuardianInvitation'- { _giCreationTime :: !(Maybe Text)- , _giStudentId :: !(Maybe Text)- , _giState :: !(Maybe Text)- , _giInvitationId :: !(Maybe Text)- , _giInvitedEmailAddress :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GuardianInvitation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'giCreationTime'------ * 'giStudentId'------ * 'giState'------ * 'giInvitationId'------ * 'giInvitedEmailAddress'-guardianInvitation- :: GuardianInvitation-guardianInvitation =- GuardianInvitation'- { _giCreationTime = Nothing- , _giStudentId = Nothing- , _giState = Nothing- , _giInvitationId = Nothing- , _giInvitedEmailAddress = Nothing- }---- | The time that this invitation was created. Read-only.-giCreationTime :: Lens' GuardianInvitation (Maybe Text)-giCreationTime- = lens _giCreationTime- (\ s a -> s{_giCreationTime = a})---- | ID of the student (in standard format)-giStudentId :: Lens' GuardianInvitation (Maybe Text)-giStudentId- = lens _giStudentId (\ s a -> s{_giStudentId = a})---- | The state that this invitation is in.-giState :: Lens' GuardianInvitation (Maybe Text)-giState = lens _giState (\ s a -> s{_giState = a})---- | Unique identifier for this invitation. Read-only.-giInvitationId :: Lens' GuardianInvitation (Maybe Text)-giInvitationId- = lens _giInvitationId- (\ s a -> s{_giInvitationId = a})---- | Email address that the invitation was sent to. This field is only--- visible to domain administrators.-giInvitedEmailAddress :: Lens' GuardianInvitation (Maybe Text)-giInvitedEmailAddress- = lens _giInvitedEmailAddress- (\ s a -> s{_giInvitedEmailAddress = a})--instance FromJSON GuardianInvitation where- parseJSON- = withObject "GuardianInvitation"- (\ o ->- GuardianInvitation' <$>- (o .:? "creationTime") <*> (o .:? "studentId") <*>- (o .:? "state")- <*> (o .:? "invitationId")- <*> (o .:? "invitedEmailAddress"))--instance ToJSON GuardianInvitation where- toJSON GuardianInvitation'{..}- = object- (catMaybes- [("creationTime" .=) <$> _giCreationTime,- ("studentId" .=) <$> _giStudentId,- ("state" .=) <$> _giState,- ("invitationId" .=) <$> _giInvitationId,- ("invitedEmailAddress" .=) <$>- _giInvitedEmailAddress])---- | Request to return a student submission.------ /See:/ 'returnStudentSubmissionRequest' smart constructor.-data ReturnStudentSubmissionRequest =- ReturnStudentSubmissionRequest'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReturnStudentSubmissionRequest' with the minimum fields required to make a request.----returnStudentSubmissionRequest- :: ReturnStudentSubmissionRequest-returnStudentSubmissionRequest = ReturnStudentSubmissionRequest'--instance FromJSON ReturnStudentSubmissionRequest- where- parseJSON- = withObject "ReturnStudentSubmissionRequest"- (\ o -> pure ReturnStudentSubmissionRequest')--instance ToJSON ReturnStudentSubmissionRequest where- toJSON = const emptyObject---- | Request to reclaim a student submission.------ /See:/ 'reclaimStudentSubmissionRequest' smart constructor.-data ReclaimStudentSubmissionRequest =- ReclaimStudentSubmissionRequest'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ReclaimStudentSubmissionRequest' with the minimum fields required to make a request.----reclaimStudentSubmissionRequest- :: ReclaimStudentSubmissionRequest-reclaimStudentSubmissionRequest = ReclaimStudentSubmissionRequest'--instance FromJSON ReclaimStudentSubmissionRequest- where- parseJSON- = withObject "ReclaimStudentSubmissionRequest"- (\ o -> pure ReclaimStudentSubmissionRequest')--instance ToJSON ReclaimStudentSubmissionRequest where- toJSON = const emptyObject---- | Response when listing course work.------ /See:/ 'listCourseWorkResponse' smart constructor.-data ListCourseWorkResponse = ListCourseWorkResponse'- { _lcwrCourseWork :: !(Maybe [CourseWork])- , _lcwrNextPageToken :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListCourseWorkResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lcwrCourseWork'------ * 'lcwrNextPageToken'-listCourseWorkResponse- :: ListCourseWorkResponse-listCourseWorkResponse =- ListCourseWorkResponse'- { _lcwrCourseWork = Nothing- , _lcwrNextPageToken = Nothing- }---- | Course work items that match the request.-lcwrCourseWork :: Lens' ListCourseWorkResponse [CourseWork]-lcwrCourseWork- = lens _lcwrCourseWork- (\ s a -> s{_lcwrCourseWork = a})- . _Default- . _Coerce---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lcwrNextPageToken :: Lens' ListCourseWorkResponse (Maybe Text)-lcwrNextPageToken- = lens _lcwrNextPageToken- (\ s a -> s{_lcwrNextPageToken = a})--instance FromJSON ListCourseWorkResponse where- parseJSON- = withObject "ListCourseWorkResponse"- (\ o ->- ListCourseWorkResponse' <$>- (o .:? "courseWork" .!= mempty) <*>- (o .:? "nextPageToken"))--instance ToJSON ListCourseWorkResponse where- toJSON ListCourseWorkResponse'{..}- = object- (catMaybes- [("courseWork" .=) <$> _lcwrCourseWork,- ("nextPageToken" .=) <$> _lcwrNextPageToken])---- | A generic empty message that you can re-use to avoid defining duplicated--- empty messages in your APIs. A typical example is to use it as the--- request or the response type of an API method. For instance: service Foo--- { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The--- JSON representation for \`Empty\` is empty JSON object \`{}\`.------ /See:/ 'empty' smart constructor.-data Empty =- Empty'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Empty' with the minimum fields required to make a request.----empty- :: Empty-empty = Empty'--instance FromJSON Empty where- parseJSON = withObject "Empty" (\ o -> pure Empty')--instance ToJSON Empty where- toJSON = const emptyObject---- | Global user permission description.------ /See:/ 'globalPermission' smart constructor.-newtype GlobalPermission = GlobalPermission'- { _gpPermission :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'GlobalPermission' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gpPermission'-globalPermission- :: GlobalPermission-globalPermission =- GlobalPermission'- { _gpPermission = Nothing- }---- | Permission value.-gpPermission :: Lens' GlobalPermission (Maybe Text)-gpPermission- = lens _gpPermission (\ s a -> s{_gpPermission = a})--instance FromJSON GlobalPermission where- parseJSON- = withObject "GlobalPermission"- (\ o -> GlobalPermission' <$> (o .:? "permission"))--instance ToJSON GlobalPermission where- toJSON GlobalPermission'{..}- = object- (catMaybes [("permission" .=) <$> _gpPermission])---- | URL item.------ /See:/ 'link' smart constructor.-data Link = Link'- { _lThumbnailURL :: !(Maybe Text)- , _lURL :: !(Maybe Text)- , _lTitle :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Link' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lThumbnailURL'------ * 'lURL'------ * 'lTitle'-link- :: Link-link =- Link'- { _lThumbnailURL = Nothing- , _lURL = Nothing- , _lTitle = Nothing- }---- | URL of a thumbnail image of the target URL. Read-only.-lThumbnailURL :: Lens' Link (Maybe Text)-lThumbnailURL- = lens _lThumbnailURL- (\ s a -> s{_lThumbnailURL = a})---- | URL to link to. This must be a valid UTF-8 string containing between 1--- and 2024 characters.-lURL :: Lens' Link (Maybe Text)-lURL = lens _lURL (\ s a -> s{_lURL = a})---- | Title of the target of the URL. Read-only.-lTitle :: Lens' Link (Maybe Text)-lTitle = lens _lTitle (\ s a -> s{_lTitle = a})--instance FromJSON Link where- parseJSON- = withObject "Link"- (\ o ->- Link' <$>- (o .:? "thumbnailUrl") <*> (o .:? "url") <*>- (o .:? "title"))--instance ToJSON Link where- toJSON Link'{..}- = object- (catMaybes- [("thumbnailUrl" .=) <$> _lThumbnailURL,- ("url" .=) <$> _lURL, ("title" .=) <$> _lTitle])---- | Student work for an assignment.------ /See:/ 'assignmentSubmission' smart constructor.-newtype AssignmentSubmission = AssignmentSubmission'- { _asAttachments :: Maybe [Attachment]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'AssignmentSubmission' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'asAttachments'-assignmentSubmission- :: AssignmentSubmission-assignmentSubmission =- AssignmentSubmission'- { _asAttachments = Nothing- }---- | Attachments added by the student. Drive files that correspond to--- materials with a share mode of STUDENT_COPY may not exist yet if the--- student has not accessed the assignment in Classroom. Some attachment--- metadata is only populated if the requesting user has permission to--- access it. Identifier and alternate_link fields are always available,--- but others (e.g. title) may not be.-asAttachments :: Lens' AssignmentSubmission [Attachment]-asAttachments- = lens _asAttachments- (\ s a -> s{_asAttachments = a})- . _Default- . _Coerce--instance FromJSON AssignmentSubmission where- parseJSON- = withObject "AssignmentSubmission"- (\ o ->- AssignmentSubmission' <$>- (o .:? "attachments" .!= mempty))--instance ToJSON AssignmentSubmission where- toJSON AssignmentSubmission'{..}- = object- (catMaybes [("attachments" .=) <$> _asAttachments])---- | Request to modify the attachments of a student submission.------ /See:/ 'modifyAttachmentsRequest' smart constructor.-newtype ModifyAttachmentsRequest = ModifyAttachmentsRequest'- { _marAddAttachments :: Maybe [Attachment]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ModifyAttachmentsRequest' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'marAddAttachments'-modifyAttachmentsRequest- :: ModifyAttachmentsRequest-modifyAttachmentsRequest =- ModifyAttachmentsRequest'- { _marAddAttachments = Nothing- }---- | Attachments to add. A student submission may not have more than 20--- attachments. Form attachments are not supported.-marAddAttachments :: Lens' ModifyAttachmentsRequest [Attachment]-marAddAttachments- = lens _marAddAttachments- (\ s a -> s{_marAddAttachments = a})- . _Default- . _Coerce--instance FromJSON ModifyAttachmentsRequest where- parseJSON- = withObject "ModifyAttachmentsRequest"- (\ o ->- ModifyAttachmentsRequest' <$>- (o .:? "addAttachments" .!= mempty))--instance ToJSON ModifyAttachmentsRequest where- toJSON ModifyAttachmentsRequest'{..}- = object- (catMaybes- [("addAttachments" .=) <$> _marAddAttachments])---- | Response when listing student submissions.------ /See:/ 'listStudentSubmissionsResponse' smart constructor.-data ListStudentSubmissionsResponse = ListStudentSubmissionsResponse'- { _lssrNextPageToken :: !(Maybe Text)- , _lssrStudentSubmissions :: !(Maybe [StudentSubmission])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListStudentSubmissionsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lssrNextPageToken'------ * 'lssrStudentSubmissions'-listStudentSubmissionsResponse- :: ListStudentSubmissionsResponse-listStudentSubmissionsResponse =- ListStudentSubmissionsResponse'- { _lssrNextPageToken = Nothing- , _lssrStudentSubmissions = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lssrNextPageToken :: Lens' ListStudentSubmissionsResponse (Maybe Text)-lssrNextPageToken- = lens _lssrNextPageToken- (\ s a -> s{_lssrNextPageToken = a})---- | Student work that matches the request.-lssrStudentSubmissions :: Lens' ListStudentSubmissionsResponse [StudentSubmission]-lssrStudentSubmissions- = lens _lssrStudentSubmissions- (\ s a -> s{_lssrStudentSubmissions = a})- . _Default- . _Coerce--instance FromJSON ListStudentSubmissionsResponse- where- parseJSON- = withObject "ListStudentSubmissionsResponse"- (\ o ->- ListStudentSubmissionsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "studentSubmissions" .!= mempty))--instance ToJSON ListStudentSubmissionsResponse where- toJSON ListStudentSubmissionsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lssrNextPageToken,- ("studentSubmissions" .=) <$>- _lssrStudentSubmissions])---- | Material attached to course work. When creating attachments, setting the--- \`form\` field is not supported.------ /See:/ 'material' smart constructor.-data Material = Material'- { _mDriveFile :: !(Maybe SharedDriveFile)- , _mLink :: !(Maybe Link)- , _mYouTubeVideo :: !(Maybe YouTubeVideo)- , _mForm :: !(Maybe Form)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Material' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mDriveFile'------ * 'mLink'------ * 'mYouTubeVideo'------ * 'mForm'-material- :: Material-material =- Material'- { _mDriveFile = Nothing- , _mLink = Nothing- , _mYouTubeVideo = Nothing- , _mForm = Nothing- }---- | Google Drive file material.-mDriveFile :: Lens' Material (Maybe SharedDriveFile)-mDriveFile- = lens _mDriveFile (\ s a -> s{_mDriveFile = a})---- | Link material. On creation, will be upgraded to a more appropriate type--- if possible, and this will be reflected in the response.-mLink :: Lens' Material (Maybe Link)-mLink = lens _mLink (\ s a -> s{_mLink = a})---- | YouTube video material.-mYouTubeVideo :: Lens' Material (Maybe YouTubeVideo)-mYouTubeVideo- = lens _mYouTubeVideo- (\ s a -> s{_mYouTubeVideo = a})---- | Google Forms material.-mForm :: Lens' Material (Maybe Form)-mForm = lens _mForm (\ s a -> s{_mForm = a})--instance FromJSON Material where- parseJSON- = withObject "Material"- (\ o ->- Material' <$>- (o .:? "driveFile") <*> (o .:? "link") <*>- (o .:? "youtubeVideo")- <*> (o .:? "form"))--instance ToJSON Material where- toJSON Material'{..}- = object- (catMaybes- [("driveFile" .=) <$> _mDriveFile,- ("link" .=) <$> _mLink,- ("youtubeVideo" .=) <$> _mYouTubeVideo,- ("form" .=) <$> _mForm])---- | Student work for a multiple-choice question.------ /See:/ 'multipleChoiceSubmission' smart constructor.-newtype MultipleChoiceSubmission = MultipleChoiceSubmission'- { _mcsAnswer :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'MultipleChoiceSubmission' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mcsAnswer'-multipleChoiceSubmission- :: MultipleChoiceSubmission-multipleChoiceSubmission =- MultipleChoiceSubmission'- { _mcsAnswer = Nothing- }---- | Student\'s select choice.-mcsAnswer :: Lens' MultipleChoiceSubmission (Maybe Text)-mcsAnswer- = lens _mcsAnswer (\ s a -> s{_mcsAnswer = a})--instance FromJSON MultipleChoiceSubmission where- parseJSON- = withObject "MultipleChoiceSubmission"- (\ o ->- MultipleChoiceSubmission' <$> (o .:? "answer"))--instance ToJSON MultipleChoiceSubmission where- toJSON MultipleChoiceSubmission'{..}- = object (catMaybes [("answer" .=) <$> _mcsAnswer])---- | Response when listing invitations.------ /See:/ 'listInvitationsResponse' smart constructor.-data ListInvitationsResponse = ListInvitationsResponse'- { _lirNextPageToken :: !(Maybe Text)- , _lirInvitations :: !(Maybe [Invitation])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListInvitationsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lirNextPageToken'------ * 'lirInvitations'-listInvitationsResponse- :: ListInvitationsResponse-listInvitationsResponse =- ListInvitationsResponse'- { _lirNextPageToken = Nothing- , _lirInvitations = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lirNextPageToken :: Lens' ListInvitationsResponse (Maybe Text)-lirNextPageToken- = lens _lirNextPageToken- (\ s a -> s{_lirNextPageToken = a})---- | Invitations that match the list request.-lirInvitations :: Lens' ListInvitationsResponse [Invitation]-lirInvitations- = lens _lirInvitations- (\ s a -> s{_lirInvitations = a})- . _Default- . _Coerce--instance FromJSON ListInvitationsResponse where- parseJSON- = withObject "ListInvitationsResponse"- (\ o ->- ListInvitationsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "invitations" .!= mempty))--instance ToJSON ListInvitationsResponse where- toJSON ListInvitationsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lirNextPageToken,- ("invitations" .=) <$> _lirInvitations])---- | Association between a student and a guardian of that student. The--- guardian may receive information about the student\'s course work.------ /See:/ 'guardian' smart constructor.-data Guardian = Guardian'- { _gStudentId :: !(Maybe Text)- , _gGuardianId :: !(Maybe Text)- , _gInvitedEmailAddress :: !(Maybe Text)- , _gGuardianProFile :: !(Maybe UserProFile)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Guardian' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'gStudentId'------ * 'gGuardianId'------ * 'gInvitedEmailAddress'------ * 'gGuardianProFile'-guardian- :: Guardian-guardian =- Guardian'- { _gStudentId = Nothing- , _gGuardianId = Nothing- , _gInvitedEmailAddress = Nothing- , _gGuardianProFile = Nothing- }---- | Identifier for the student to whom the guardian relationship applies.-gStudentId :: Lens' Guardian (Maybe Text)-gStudentId- = lens _gStudentId (\ s a -> s{_gStudentId = a})---- | Identifier for the guardian.-gGuardianId :: Lens' Guardian (Maybe Text)-gGuardianId- = lens _gGuardianId (\ s a -> s{_gGuardianId = a})---- | The email address to which the initial guardian invitation was sent.--- This field is only visible to domain administrators.-gInvitedEmailAddress :: Lens' Guardian (Maybe Text)-gInvitedEmailAddress- = lens _gInvitedEmailAddress- (\ s a -> s{_gInvitedEmailAddress = a})---- | User profile for the guardian.-gGuardianProFile :: Lens' Guardian (Maybe UserProFile)-gGuardianProFile- = lens _gGuardianProFile- (\ s a -> s{_gGuardianProFile = a})--instance FromJSON Guardian where- parseJSON- = withObject "Guardian"- (\ o ->- Guardian' <$>- (o .:? "studentId") <*> (o .:? "guardianId") <*>- (o .:? "invitedEmailAddress")- <*> (o .:? "guardianProfile"))--instance ToJSON Guardian where- toJSON Guardian'{..}- = object- (catMaybes- [("studentId" .=) <$> _gStudentId,- ("guardianId" .=) <$> _gGuardianId,- ("invitedEmailAddress" .=) <$> _gInvitedEmailAddress,- ("guardianProfile" .=) <$> _gGuardianProFile])---- | A material attached to a course as part of a material set.------ /See:/ 'courseMaterial' smart constructor.-data CourseMaterial = CourseMaterial'- { _cmDriveFile :: !(Maybe DriveFile)- , _cmLink :: !(Maybe Link)- , _cmYouTubeVideo :: !(Maybe YouTubeVideo)- , _cmForm :: !(Maybe Form)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CourseMaterial' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cmDriveFile'------ * 'cmLink'------ * 'cmYouTubeVideo'------ * 'cmForm'-courseMaterial- :: CourseMaterial-courseMaterial =- CourseMaterial'- { _cmDriveFile = Nothing- , _cmLink = Nothing- , _cmYouTubeVideo = Nothing- , _cmForm = Nothing- }---- | Google Drive file attachment.-cmDriveFile :: Lens' CourseMaterial (Maybe DriveFile)-cmDriveFile- = lens _cmDriveFile (\ s a -> s{_cmDriveFile = a})---- | Link atatchment.-cmLink :: Lens' CourseMaterial (Maybe Link)-cmLink = lens _cmLink (\ s a -> s{_cmLink = a})---- | Youtube video attachment.-cmYouTubeVideo :: Lens' CourseMaterial (Maybe YouTubeVideo)-cmYouTubeVideo- = lens _cmYouTubeVideo- (\ s a -> s{_cmYouTubeVideo = a})---- | Google Forms attachment.-cmForm :: Lens' CourseMaterial (Maybe Form)-cmForm = lens _cmForm (\ s a -> s{_cmForm = a})--instance FromJSON CourseMaterial where- parseJSON- = withObject "CourseMaterial"- (\ o ->- CourseMaterial' <$>- (o .:? "driveFile") <*> (o .:? "link") <*>- (o .:? "youTubeVideo")- <*> (o .:? "form"))--instance ToJSON CourseMaterial where- toJSON CourseMaterial'{..}- = object- (catMaybes- [("driveFile" .=) <$> _cmDriveFile,- ("link" .=) <$> _cmLink,- ("youTubeVideo" .=) <$> _cmYouTubeVideo,- ("form" .=) <$> _cmForm])---- | Student work for a short answer question.------ /See:/ 'shortAnswerSubmission' smart constructor.-newtype ShortAnswerSubmission = ShortAnswerSubmission'- { _sasAnswer :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ShortAnswerSubmission' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sasAnswer'-shortAnswerSubmission- :: ShortAnswerSubmission-shortAnswerSubmission =- ShortAnswerSubmission'- { _sasAnswer = Nothing- }---- | Student response to a short-answer question.-sasAnswer :: Lens' ShortAnswerSubmission (Maybe Text)-sasAnswer- = lens _sasAnswer (\ s a -> s{_sasAnswer = a})--instance FromJSON ShortAnswerSubmission where- parseJSON- = withObject "ShortAnswerSubmission"- (\ o -> ShortAnswerSubmission' <$> (o .:? "answer"))--instance ToJSON ShortAnswerSubmission where- toJSON ShortAnswerSubmission'{..}- = object (catMaybes [("answer" .=) <$> _sasAnswer])---- | An invitation to join a course.------ /See:/ 'invitation' smart constructor.-data Invitation = Invitation'- { _iCourseId :: !(Maybe Text)- , _iUserId :: !(Maybe Text)- , _iRole :: !(Maybe Text)- , _iId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Invitation' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'iCourseId'------ * 'iUserId'------ * 'iRole'------ * 'iId'-invitation- :: Invitation-invitation =- Invitation'- { _iCourseId = Nothing- , _iUserId = Nothing- , _iRole = Nothing- , _iId = Nothing- }---- | Identifier of the course to invite the user to.-iCourseId :: Lens' Invitation (Maybe Text)-iCourseId- = lens _iCourseId (\ s a -> s{_iCourseId = a})---- | Identifier of the invited user. When specified as a parameter of a--- request, this identifier can be set to one of the following: * the--- numeric identifier for the user * the email address of the user * the--- string literal \`\"me\"\`, indicating the requesting user-iUserId :: Lens' Invitation (Maybe Text)-iUserId = lens _iUserId (\ s a -> s{_iUserId = a})---- | Role to invite the user to have. Must not be--- \`COURSE_ROLE_UNSPECIFIED\`.-iRole :: Lens' Invitation (Maybe Text)-iRole = lens _iRole (\ s a -> s{_iRole = a})---- | Identifier assigned by Classroom. Read-only.-iId :: Lens' Invitation (Maybe Text)-iId = lens _iId (\ s a -> s{_iId = a})--instance FromJSON Invitation where- parseJSON- = withObject "Invitation"- (\ o ->- Invitation' <$>- (o .:? "courseId") <*> (o .:? "userId") <*>- (o .:? "role")- <*> (o .:? "id"))--instance ToJSON Invitation where- toJSON Invitation'{..}- = object- (catMaybes- [("courseId" .=) <$> _iCourseId,- ("userId" .=) <$> _iUserId, ("role" .=) <$> _iRole,- ("id" .=) <$> _iId])---- | Attachment added to student assignment work. When creating attachments,--- setting the \`form\` field is not supported.------ /See:/ 'attachment' smart constructor.-data Attachment = Attachment'- { _aDriveFile :: !(Maybe DriveFile)- , _aLink :: !(Maybe Link)- , _aYouTubeVideo :: !(Maybe YouTubeVideo)- , _aForm :: !(Maybe Form)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Attachment' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aDriveFile'------ * 'aLink'------ * 'aYouTubeVideo'------ * 'aForm'-attachment- :: Attachment-attachment =- Attachment'- { _aDriveFile = Nothing- , _aLink = Nothing- , _aYouTubeVideo = Nothing- , _aForm = Nothing- }---- | Google Drive file attachment.-aDriveFile :: Lens' Attachment (Maybe DriveFile)-aDriveFile- = lens _aDriveFile (\ s a -> s{_aDriveFile = a})---- | Link attachment.-aLink :: Lens' Attachment (Maybe Link)-aLink = lens _aLink (\ s a -> s{_aLink = a})---- | Youtube video attachment.-aYouTubeVideo :: Lens' Attachment (Maybe YouTubeVideo)-aYouTubeVideo- = lens _aYouTubeVideo- (\ s a -> s{_aYouTubeVideo = a})---- | Google Forms attachment.-aForm :: Lens' Attachment (Maybe Form)-aForm = lens _aForm (\ s a -> s{_aForm = a})--instance FromJSON Attachment where- parseJSON- = withObject "Attachment"- (\ o ->- Attachment' <$>- (o .:? "driveFile") <*> (o .:? "link") <*>- (o .:? "youTubeVideo")- <*> (o .:? "form"))--instance ToJSON Attachment where- toJSON Attachment'{..}- = object- (catMaybes- [("driveFile" .=) <$> _aDriveFile,- ("link" .=) <$> _aLink,- ("youTubeVideo" .=) <$> _aYouTubeVideo,- ("form" .=) <$> _aForm])---- | Student submission for course work. StudentSubmission items are--- generated when a CourseWork item is created. StudentSubmissions that--- have never been accessed (i.e. with \`state\` = NEW) may not have a--- creation time or update time.------ /See:/ 'studentSubmission' smart constructor.-data StudentSubmission = StudentSubmission'- { _ssCreationTime :: !(Maybe Text)- , _ssLate :: !(Maybe Bool)- , _ssState :: !(Maybe Text)- , _ssCourseId :: !(Maybe Text)- , _ssMultipleChoiceSubmission :: !(Maybe MultipleChoiceSubmission)- , _ssAssignmentSubmission :: !(Maybe AssignmentSubmission)- , _ssShortAnswerSubmission :: !(Maybe ShortAnswerSubmission)- , _ssAssociatedWithDeveloper :: !(Maybe Bool)- , _ssUserId :: !(Maybe Text)- , _ssUpdateTime :: !(Maybe Text)- , _ssCourseWorkType :: !(Maybe Text)- , _ssAssignedGrade :: !(Maybe (Textual Double))- , _ssId :: !(Maybe Text)- , _ssDraftGrade :: !(Maybe (Textual Double))- , _ssAlternateLink :: !(Maybe Text)- , _ssCourseWorkId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'StudentSubmission' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ssCreationTime'------ * 'ssLate'------ * 'ssState'------ * 'ssCourseId'------ * 'ssMultipleChoiceSubmission'------ * 'ssAssignmentSubmission'------ * 'ssShortAnswerSubmission'------ * 'ssAssociatedWithDeveloper'------ * 'ssUserId'------ * 'ssUpdateTime'------ * 'ssCourseWorkType'------ * 'ssAssignedGrade'------ * 'ssId'------ * 'ssDraftGrade'------ * 'ssAlternateLink'------ * 'ssCourseWorkId'-studentSubmission- :: StudentSubmission-studentSubmission =- StudentSubmission'- { _ssCreationTime = Nothing- , _ssLate = Nothing- , _ssState = Nothing- , _ssCourseId = Nothing- , _ssMultipleChoiceSubmission = Nothing- , _ssAssignmentSubmission = Nothing- , _ssShortAnswerSubmission = Nothing- , _ssAssociatedWithDeveloper = Nothing- , _ssUserId = Nothing- , _ssUpdateTime = Nothing- , _ssCourseWorkType = Nothing- , _ssAssignedGrade = Nothing- , _ssId = Nothing- , _ssDraftGrade = Nothing- , _ssAlternateLink = Nothing- , _ssCourseWorkId = Nothing- }---- | Creation time of this submission. This may be unset if the student has--- not accessed this item. Read-only.-ssCreationTime :: Lens' StudentSubmission (Maybe Text)-ssCreationTime- = lens _ssCreationTime- (\ s a -> s{_ssCreationTime = a})---- | Whether this submission is late. Read-only.-ssLate :: Lens' StudentSubmission (Maybe Bool)-ssLate = lens _ssLate (\ s a -> s{_ssLate = a})---- | State of this submission. Read-only.-ssState :: Lens' StudentSubmission (Maybe Text)-ssState = lens _ssState (\ s a -> s{_ssState = a})---- | Identifier of the course. Read-only.-ssCourseId :: Lens' StudentSubmission (Maybe Text)-ssCourseId- = lens _ssCourseId (\ s a -> s{_ssCourseId = a})---- | Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION.-ssMultipleChoiceSubmission :: Lens' StudentSubmission (Maybe MultipleChoiceSubmission)-ssMultipleChoiceSubmission- = lens _ssMultipleChoiceSubmission- (\ s a -> s{_ssMultipleChoiceSubmission = a})---- | Submission content when course_work_type is ASSIGNMENT .-ssAssignmentSubmission :: Lens' StudentSubmission (Maybe AssignmentSubmission)-ssAssignmentSubmission- = lens _ssAssignmentSubmission- (\ s a -> s{_ssAssignmentSubmission = a})---- | Submission content when course_work_type is SHORT_ANSWER_QUESTION.-ssShortAnswerSubmission :: Lens' StudentSubmission (Maybe ShortAnswerSubmission)-ssShortAnswerSubmission- = lens _ssShortAnswerSubmission- (\ s a -> s{_ssShortAnswerSubmission = a})---- | Whether this student submission is associated with the Developer Console--- project making the request. See google.classroom.Work.CreateCourseWork--- for more details. Read-only.-ssAssociatedWithDeveloper :: Lens' StudentSubmission (Maybe Bool)-ssAssociatedWithDeveloper- = lens _ssAssociatedWithDeveloper- (\ s a -> s{_ssAssociatedWithDeveloper = a})---- | Identifier for the student that owns this submission. Read-only.-ssUserId :: Lens' StudentSubmission (Maybe Text)-ssUserId = lens _ssUserId (\ s a -> s{_ssUserId = a})---- | Last update time of this submission. This may be unset if the student--- has not accessed this item. Read-only.-ssUpdateTime :: Lens' StudentSubmission (Maybe Text)-ssUpdateTime- = lens _ssUpdateTime (\ s a -> s{_ssUpdateTime = a})---- | Type of course work this submission is for. Read-only.-ssCourseWorkType :: Lens' StudentSubmission (Maybe Text)-ssCourseWorkType- = lens _ssCourseWorkType- (\ s a -> s{_ssCourseWorkType = a})---- | Optional grade. If unset, no grade was set. This must be a non-negative--- integer value. This may be modified only by course teachers.-ssAssignedGrade :: Lens' StudentSubmission (Maybe Double)-ssAssignedGrade- = lens _ssAssignedGrade- (\ s a -> s{_ssAssignedGrade = a})- . mapping _Coerce---- | Classroom-assigned Identifier for the student submission. This is unique--- among submissions for the relevant course work. Read-only.-ssId :: Lens' StudentSubmission (Maybe Text)-ssId = lens _ssId (\ s a -> s{_ssId = a})---- | Optional pending grade. If unset, no grade was set. This must be a--- non-negative integer value. This is only visible to and modifiable by--- course teachers.-ssDraftGrade :: Lens' StudentSubmission (Maybe Double)-ssDraftGrade- = lens _ssDraftGrade (\ s a -> s{_ssDraftGrade = a})- . mapping _Coerce---- | Absolute link to the submission in the Classroom web UI. Read-only.-ssAlternateLink :: Lens' StudentSubmission (Maybe Text)-ssAlternateLink- = lens _ssAlternateLink- (\ s a -> s{_ssAlternateLink = a})---- | Identifier for the course work this corresponds to. Read-only.-ssCourseWorkId :: Lens' StudentSubmission (Maybe Text)-ssCourseWorkId- = lens _ssCourseWorkId- (\ s a -> s{_ssCourseWorkId = a})--instance FromJSON StudentSubmission where- parseJSON- = withObject "StudentSubmission"- (\ o ->- StudentSubmission' <$>- (o .:? "creationTime") <*> (o .:? "late") <*>- (o .:? "state")- <*> (o .:? "courseId")- <*> (o .:? "multipleChoiceSubmission")- <*> (o .:? "assignmentSubmission")- <*> (o .:? "shortAnswerSubmission")- <*> (o .:? "associatedWithDeveloper")- <*> (o .:? "userId")- <*> (o .:? "updateTime")- <*> (o .:? "courseWorkType")- <*> (o .:? "assignedGrade")- <*> (o .:? "id")- <*> (o .:? "draftGrade")- <*> (o .:? "alternateLink")- <*> (o .:? "courseWorkId"))--instance ToJSON StudentSubmission where- toJSON StudentSubmission'{..}- = object- (catMaybes- [("creationTime" .=) <$> _ssCreationTime,- ("late" .=) <$> _ssLate, ("state" .=) <$> _ssState,- ("courseId" .=) <$> _ssCourseId,- ("multipleChoiceSubmission" .=) <$>- _ssMultipleChoiceSubmission,- ("assignmentSubmission" .=) <$>- _ssAssignmentSubmission,- ("shortAnswerSubmission" .=) <$>- _ssShortAnswerSubmission,- ("associatedWithDeveloper" .=) <$>- _ssAssociatedWithDeveloper,- ("userId" .=) <$> _ssUserId,- ("updateTime" .=) <$> _ssUpdateTime,- ("courseWorkType" .=) <$> _ssCourseWorkType,- ("assignedGrade" .=) <$> _ssAssignedGrade,- ("id" .=) <$> _ssId,- ("draftGrade" .=) <$> _ssDraftGrade,- ("alternateLink" .=) <$> _ssAlternateLink,- ("courseWorkId" .=) <$> _ssCourseWorkId])---- | Response when listing guardians.------ /See:/ 'listGuardiansResponse' smart constructor.-data ListGuardiansResponse = ListGuardiansResponse'- { _lgrNextPageToken :: !(Maybe Text)- , _lgrGuardians :: !(Maybe [Guardian])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListGuardiansResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgrNextPageToken'------ * 'lgrGuardians'-listGuardiansResponse- :: ListGuardiansResponse-listGuardiansResponse =- ListGuardiansResponse'- { _lgrNextPageToken = Nothing- , _lgrGuardians = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lgrNextPageToken :: Lens' ListGuardiansResponse (Maybe Text)-lgrNextPageToken- = lens _lgrNextPageToken- (\ s a -> s{_lgrNextPageToken = a})---- | Guardians on this page of results that met the criteria specified in the--- request.-lgrGuardians :: Lens' ListGuardiansResponse [Guardian]-lgrGuardians- = lens _lgrGuardians (\ s a -> s{_lgrGuardians = a})- . _Default- . _Coerce--instance FromJSON ListGuardiansResponse where- parseJSON- = withObject "ListGuardiansResponse"- (\ o ->- ListGuardiansResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "guardians" .!= mempty))--instance ToJSON ListGuardiansResponse where- toJSON ListGuardiansResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lgrNextPageToken,- ("guardians" .=) <$> _lgrGuardians])---- | Represents a whole calendar date, e.g. date of birth. The time of day--- and time zone are either specified elsewhere or are not significant. The--- date is relative to the Proleptic Gregorian Calendar. The day may be 0--- to represent a year and month where the day is not significant, e.g.--- credit card expiration date. The year may be 0 to represent a month and--- day independent of year, e.g. anniversary date. Related types are--- google.type.TimeOfDay and \`google.protobuf.Timestamp\`.------ /See:/ 'date' smart constructor.-data Date = Date'- { _dDay :: !(Maybe (Textual Int32))- , _dYear :: !(Maybe (Textual Int32))- , _dMonth :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Date' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dDay'------ * 'dYear'------ * 'dMonth'-date- :: Date-date =- Date'- { _dDay = Nothing- , _dYear = Nothing- , _dMonth = Nothing- }---- | Day of month. Must be from 1 to 31 and valid for the year and month, or--- 0 if specifying a year\/month where the day is not significant.-dDay :: Lens' Date (Maybe Int32)-dDay- = lens _dDay (\ s a -> s{_dDay = a}) .- mapping _Coerce---- | Year of date. Must be from 1 to 9999, or 0 if specifying a date without--- a year.-dYear :: Lens' Date (Maybe Int32)-dYear- = lens _dYear (\ s a -> s{_dYear = a}) .- mapping _Coerce---- | Month of year. Must be from 1 to 12.-dMonth :: Lens' Date (Maybe Int32)-dMonth- = lens _dMonth (\ s a -> s{_dMonth = a}) .- mapping _Coerce--instance FromJSON Date where- parseJSON- = withObject "Date"- (\ o ->- Date' <$>- (o .:? "day") <*> (o .:? "year") <*> (o .:? "month"))--instance ToJSON Date where- toJSON Date'{..}- = object- (catMaybes- [("day" .=) <$> _dDay, ("year" .=) <$> _dYear,- ("month" .=) <$> _dMonth])---- | YouTube video item.------ /See:/ 'youTubeVideo' smart constructor.-data YouTubeVideo = YouTubeVideo'- { _ytvThumbnailURL :: !(Maybe Text)- , _ytvId :: !(Maybe Text)- , _ytvTitle :: !(Maybe Text)- , _ytvAlternateLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'YouTubeVideo' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ytvThumbnailURL'------ * 'ytvId'------ * 'ytvTitle'------ * 'ytvAlternateLink'-youTubeVideo- :: YouTubeVideo-youTubeVideo =- YouTubeVideo'- { _ytvThumbnailURL = Nothing- , _ytvId = Nothing- , _ytvTitle = Nothing- , _ytvAlternateLink = Nothing- }---- | URL of a thumbnail image of the YouTube video. Read-only.-ytvThumbnailURL :: Lens' YouTubeVideo (Maybe Text)-ytvThumbnailURL- = lens _ytvThumbnailURL- (\ s a -> s{_ytvThumbnailURL = a})---- | YouTube API resource ID.-ytvId :: Lens' YouTubeVideo (Maybe Text)-ytvId = lens _ytvId (\ s a -> s{_ytvId = a})---- | Title of the YouTube video. Read-only.-ytvTitle :: Lens' YouTubeVideo (Maybe Text)-ytvTitle = lens _ytvTitle (\ s a -> s{_ytvTitle = a})---- | URL that can be used to view the YouTube video. Read-only.-ytvAlternateLink :: Lens' YouTubeVideo (Maybe Text)-ytvAlternateLink- = lens _ytvAlternateLink- (\ s a -> s{_ytvAlternateLink = a})--instance FromJSON YouTubeVideo where- parseJSON- = withObject "YouTubeVideo"- (\ o ->- YouTubeVideo' <$>- (o .:? "thumbnailUrl") <*> (o .:? "id") <*>- (o .:? "title")- <*> (o .:? "alternateLink"))--instance ToJSON YouTubeVideo where- toJSON YouTubeVideo'{..}- = object- (catMaybes- [("thumbnailUrl" .=) <$> _ytvThumbnailURL,- ("id" .=) <$> _ytvId, ("title" .=) <$> _ytvTitle,- ("alternateLink" .=) <$> _ytvAlternateLink])---- | Teacher of a course.------ /See:/ 'teacher' smart constructor.-data Teacher = Teacher'- { _tCourseId :: !(Maybe Text)- , _tProFile :: !(Maybe UserProFile)- , _tUserId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Teacher' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'tCourseId'------ * 'tProFile'------ * 'tUserId'-teacher- :: Teacher-teacher =- Teacher'- { _tCourseId = Nothing- , _tProFile = Nothing- , _tUserId = Nothing- }---- | Identifier of the course. Read-only.-tCourseId :: Lens' Teacher (Maybe Text)-tCourseId- = lens _tCourseId (\ s a -> s{_tCourseId = a})---- | Global user information for the teacher. Read-only.-tProFile :: Lens' Teacher (Maybe UserProFile)-tProFile = lens _tProFile (\ s a -> s{_tProFile = a})---- | Identifier of the user. When specified as a parameter of a request, this--- identifier can be one of the following: * the numeric identifier for the--- user * the email address of the user * the string literal \`\"me\"\`,--- indicating the requesting user-tUserId :: Lens' Teacher (Maybe Text)-tUserId = lens _tUserId (\ s a -> s{_tUserId = a})--instance FromJSON Teacher where- parseJSON- = withObject "Teacher"- (\ o ->- Teacher' <$>- (o .:? "courseId") <*> (o .:? "profile") <*>- (o .:? "userId"))--instance ToJSON Teacher where- toJSON Teacher'{..}- = object- (catMaybes- [("courseId" .=) <$> _tCourseId,- ("profile" .=) <$> _tProFile,- ("userId" .=) <$> _tUserId])---- | A set of materials that appears on the \"About\" page of the course.--- These materials might include a syllabus, schedule, or other background--- information relating to the course as a whole.------ /See:/ 'courseMaterialSet' smart constructor.-data CourseMaterialSet = CourseMaterialSet'- { _cmsMaterials :: !(Maybe [CourseMaterial])- , _cmsTitle :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CourseMaterialSet' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cmsMaterials'------ * 'cmsTitle'-courseMaterialSet- :: CourseMaterialSet-courseMaterialSet =- CourseMaterialSet'- { _cmsMaterials = Nothing- , _cmsTitle = Nothing- }---- | Materials attached to this set.-cmsMaterials :: Lens' CourseMaterialSet [CourseMaterial]-cmsMaterials- = lens _cmsMaterials (\ s a -> s{_cmsMaterials = a})- . _Default- . _Coerce---- | Title for this set.-cmsTitle :: Lens' CourseMaterialSet (Maybe Text)-cmsTitle = lens _cmsTitle (\ s a -> s{_cmsTitle = a})--instance FromJSON CourseMaterialSet where- parseJSON- = withObject "CourseMaterialSet"- (\ o ->- CourseMaterialSet' <$>- (o .:? "materials" .!= mempty) <*> (o .:? "title"))--instance ToJSON CourseMaterialSet where- toJSON CourseMaterialSet'{..}- = object- (catMaybes- [("materials" .=) <$> _cmsMaterials,- ("title" .=) <$> _cmsTitle])---- | Details of the user\'s name.------ /See:/ 'name' smart constructor.-data Name = Name'- { _nGivenName :: !(Maybe Text)- , _nFullName :: !(Maybe Text)- , _nFamilyName :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Name' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'nGivenName'------ * 'nFullName'------ * 'nFamilyName'-name- :: Name-name =- Name'- { _nGivenName = Nothing- , _nFullName = Nothing- , _nFamilyName = Nothing- }---- | The user\'s first name. Read-only.-nGivenName :: Lens' Name (Maybe Text)-nGivenName- = lens _nGivenName (\ s a -> s{_nGivenName = a})---- | The user\'s full name formed by concatenating the first and last name--- values. Read-only.-nFullName :: Lens' Name (Maybe Text)-nFullName- = lens _nFullName (\ s a -> s{_nFullName = a})---- | The user\'s last name. Read-only.-nFamilyName :: Lens' Name (Maybe Text)-nFamilyName- = lens _nFamilyName (\ s a -> s{_nFamilyName = a})--instance FromJSON Name where- parseJSON- = withObject "Name"- (\ o ->- Name' <$>- (o .:? "givenName") <*> (o .:? "fullName") <*>- (o .:? "familyName"))--instance ToJSON Name where- toJSON Name'{..}- = object- (catMaybes- [("givenName" .=) <$> _nGivenName,- ("fullName" .=) <$> _nFullName,- ("familyName" .=) <$> _nFamilyName])---- | Response when listing courses.------ /See:/ 'listCoursesResponse' smart constructor.-data ListCoursesResponse = ListCoursesResponse'- { _lcrNextPageToken :: !(Maybe Text)- , _lcrCourses :: !(Maybe [Course])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListCoursesResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lcrNextPageToken'------ * 'lcrCourses'-listCoursesResponse- :: ListCoursesResponse-listCoursesResponse =- ListCoursesResponse'- { _lcrNextPageToken = Nothing- , _lcrCourses = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lcrNextPageToken :: Lens' ListCoursesResponse (Maybe Text)-lcrNextPageToken- = lens _lcrNextPageToken- (\ s a -> s{_lcrNextPageToken = a})---- | Courses that match the list request.-lcrCourses :: Lens' ListCoursesResponse [Course]-lcrCourses- = lens _lcrCourses (\ s a -> s{_lcrCourses = a}) .- _Default- . _Coerce--instance FromJSON ListCoursesResponse where- parseJSON- = withObject "ListCoursesResponse"- (\ o ->- ListCoursesResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "courses" .!= mempty))--instance ToJSON ListCoursesResponse where- toJSON ListCoursesResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lcrNextPageToken,- ("courses" .=) <$> _lcrCourses])---- | Request to turn in a student submission.------ /See:/ 'turnInStudentSubmissionRequest' smart constructor.-data TurnInStudentSubmissionRequest =- TurnInStudentSubmissionRequest'- deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TurnInStudentSubmissionRequest' with the minimum fields required to make a request.----turnInStudentSubmissionRequest- :: TurnInStudentSubmissionRequest-turnInStudentSubmissionRequest = TurnInStudentSubmissionRequest'--instance FromJSON TurnInStudentSubmissionRequest- where- parseJSON- = withObject "TurnInStudentSubmissionRequest"- (\ o -> pure TurnInStudentSubmissionRequest')--instance ToJSON TurnInStudentSubmissionRequest where- toJSON = const emptyObject---- | Global information for a user.------ /See:/ 'userProFile' smart constructor.-data UserProFile = UserProFile'- { _upfPhotoURL :: !(Maybe Text)- , _upfName :: !(Maybe Name)- , _upfEmailAddress :: !(Maybe Text)- , _upfId :: !(Maybe Text)- , _upfPermissions :: !(Maybe [GlobalPermission])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'UserProFile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'upfPhotoURL'------ * 'upfName'------ * 'upfEmailAddress'------ * 'upfId'------ * 'upfPermissions'-userProFile- :: UserProFile-userProFile =- UserProFile'- { _upfPhotoURL = Nothing- , _upfName = Nothing- , _upfEmailAddress = Nothing- , _upfId = Nothing- , _upfPermissions = Nothing- }---- | URL of user\'s profile photo. Read-only.-upfPhotoURL :: Lens' UserProFile (Maybe Text)-upfPhotoURL- = lens _upfPhotoURL (\ s a -> s{_upfPhotoURL = a})---- | Name of the user. Read-only.-upfName :: Lens' UserProFile (Maybe Name)-upfName = lens _upfName (\ s a -> s{_upfName = a})---- | Email address of the user. Read-only.-upfEmailAddress :: Lens' UserProFile (Maybe Text)-upfEmailAddress- = lens _upfEmailAddress- (\ s a -> s{_upfEmailAddress = a})---- | Identifier of the user. Read-only.-upfId :: Lens' UserProFile (Maybe Text)-upfId = lens _upfId (\ s a -> s{_upfId = a})---- | Global permissions of the user. Read-only.-upfPermissions :: Lens' UserProFile [GlobalPermission]-upfPermissions- = lens _upfPermissions- (\ s a -> s{_upfPermissions = a})- . _Default- . _Coerce--instance FromJSON UserProFile where- parseJSON- = withObject "UserProFile"- (\ o ->- UserProFile' <$>- (o .:? "photoUrl") <*> (o .:? "name") <*>- (o .:? "emailAddress")- <*> (o .:? "id")- <*> (o .:? "permissions" .!= mempty))--instance ToJSON UserProFile where- toJSON UserProFile'{..}- = object- (catMaybes- [("photoUrl" .=) <$> _upfPhotoURL,- ("name" .=) <$> _upfName,- ("emailAddress" .=) <$> _upfEmailAddress,- ("id" .=) <$> _upfId,- ("permissions" .=) <$> _upfPermissions])---- | Representation of a Google Drive folder.------ /See:/ 'driveFolder' smart constructor.-data DriveFolder = DriveFolder'- { _dId :: !(Maybe Text)- , _dTitle :: !(Maybe Text)- , _dAlternateLink :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'DriveFolder' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'dId'------ * 'dTitle'------ * 'dAlternateLink'-driveFolder- :: DriveFolder-driveFolder =- DriveFolder'- { _dId = Nothing- , _dTitle = Nothing- , _dAlternateLink = Nothing- }---- | Drive API resource ID.-dId :: Lens' DriveFolder (Maybe Text)-dId = lens _dId (\ s a -> s{_dId = a})---- | Title of the Drive folder. Read-only.-dTitle :: Lens' DriveFolder (Maybe Text)-dTitle = lens _dTitle (\ s a -> s{_dTitle = a})---- | URL that can be used to access the Drive folder. Read-only.-dAlternateLink :: Lens' DriveFolder (Maybe Text)-dAlternateLink- = lens _dAlternateLink- (\ s a -> s{_dAlternateLink = a})--instance FromJSON DriveFolder where- parseJSON- = withObject "DriveFolder"- (\ o ->- DriveFolder' <$>- (o .:? "id") <*> (o .:? "title") <*>- (o .:? "alternateLink"))--instance ToJSON DriveFolder where- toJSON DriveFolder'{..}- = object- (catMaybes- [("id" .=) <$> _dId, ("title" .=) <$> _dTitle,- ("alternateLink" .=) <$> _dAlternateLink])---- | Additional details for multiple-choice questions.------ /See:/ 'multipleChoiceQuestion' smart constructor.-newtype MultipleChoiceQuestion = MultipleChoiceQuestion'- { _mcqChoices :: Maybe [Text]- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'MultipleChoiceQuestion' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'mcqChoices'-multipleChoiceQuestion- :: MultipleChoiceQuestion-multipleChoiceQuestion =- MultipleChoiceQuestion'- { _mcqChoices = Nothing- }---- | Possible choices.-mcqChoices :: Lens' MultipleChoiceQuestion [Text]-mcqChoices- = lens _mcqChoices (\ s a -> s{_mcqChoices = a}) .- _Default- . _Coerce--instance FromJSON MultipleChoiceQuestion where- parseJSON- = withObject "MultipleChoiceQuestion"- (\ o ->- MultipleChoiceQuestion' <$>- (o .:? "choices" .!= mempty))--instance ToJSON MultipleChoiceQuestion where- toJSON MultipleChoiceQuestion'{..}- = object (catMaybes [("choices" .=) <$> _mcqChoices])---- | A Course in Classroom.------ /See:/ 'course' smart constructor.-data Course = Course'- { _cCreationTime :: !(Maybe Text)- , _cRoom :: !(Maybe Text)- , _cCourseMaterialSets :: !(Maybe [CourseMaterialSet])- , _cTeacherGroupEmail :: !(Maybe Text)- , _cTeacherFolder :: !(Maybe DriveFolder)- , _cCourseState :: !(Maybe Text)- , _cGuardiansEnabled :: !(Maybe Bool)- , _cEnrollmentCode :: !(Maybe Text)- , _cUpdateTime :: !(Maybe Text)- , _cOwnerId :: !(Maybe Text)- , _cName :: !(Maybe Text)- , _cId :: !(Maybe Text)- , _cAlternateLink :: !(Maybe Text)- , _cCourseGroupEmail :: !(Maybe Text)- , _cDescription :: !(Maybe Text)- , _cDescriptionHeading :: !(Maybe Text)- , _cSection :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Course' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'cCreationTime'------ * 'cRoom'------ * 'cCourseMaterialSets'------ * 'cTeacherGroupEmail'------ * 'cTeacherFolder'------ * 'cCourseState'------ * 'cGuardiansEnabled'------ * 'cEnrollmentCode'------ * 'cUpdateTime'------ * 'cOwnerId'------ * 'cName'------ * 'cId'------ * 'cAlternateLink'------ * 'cCourseGroupEmail'------ * 'cDescription'------ * 'cDescriptionHeading'------ * 'cSection'-course- :: Course-course =- Course'- { _cCreationTime = Nothing- , _cRoom = Nothing- , _cCourseMaterialSets = Nothing- , _cTeacherGroupEmail = Nothing- , _cTeacherFolder = Nothing- , _cCourseState = Nothing- , _cGuardiansEnabled = Nothing- , _cEnrollmentCode = Nothing- , _cUpdateTime = Nothing- , _cOwnerId = Nothing- , _cName = Nothing- , _cId = Nothing- , _cAlternateLink = Nothing- , _cCourseGroupEmail = Nothing- , _cDescription = Nothing- , _cDescriptionHeading = Nothing- , _cSection = Nothing- }---- | Creation time of the course. Specifying this field in a course update--- mask results in an error. Read-only.-cCreationTime :: Lens' Course (Maybe Text)-cCreationTime- = lens _cCreationTime- (\ s a -> s{_cCreationTime = a})---- | Optional room location. For example, \"301\". If set, this field must be--- a valid UTF-8 string and no longer than 650 characters.-cRoom :: Lens' Course (Maybe Text)-cRoom = lens _cRoom (\ s a -> s{_cRoom = a})---- | Sets of materials that appear on the \"about\" page of this course.--- Read-only.-cCourseMaterialSets :: Lens' Course [CourseMaterialSet]-cCourseMaterialSets- = lens _cCourseMaterialSets- (\ s a -> s{_cCourseMaterialSets = a})- . _Default- . _Coerce---- | The email address of a Google group containing all teachers of the--- course. This group does not accept email and can only be used for--- permissions. Read-only.-cTeacherGroupEmail :: Lens' Course (Maybe Text)-cTeacherGroupEmail- = lens _cTeacherGroupEmail- (\ s a -> s{_cTeacherGroupEmail = a})---- | Information about a Drive Folder that is shared with all teachers of the--- course. This field will only be set for teachers of the course and--- domain administrators. Read-only.-cTeacherFolder :: Lens' Course (Maybe DriveFolder)-cTeacherFolder- = lens _cTeacherFolder- (\ s a -> s{_cTeacherFolder = a})---- | State of the course. If unspecified, the default state is--- \`PROVISIONED\`.-cCourseState :: Lens' Course (Maybe Text)-cCourseState- = lens _cCourseState (\ s a -> s{_cCourseState = a})---- | Whether or not guardian notifications are enabled for this course.--- Read-only.-cGuardiansEnabled :: Lens' Course (Maybe Bool)-cGuardiansEnabled- = lens _cGuardiansEnabled- (\ s a -> s{_cGuardiansEnabled = a})---- | Enrollment code to use when joining this course. Specifying this field--- in a course update mask results in an error. Read-only.-cEnrollmentCode :: Lens' Course (Maybe Text)-cEnrollmentCode- = lens _cEnrollmentCode- (\ s a -> s{_cEnrollmentCode = a})---- | Time of the most recent update to this course. Specifying this field in--- a course update mask results in an error. Read-only.-cUpdateTime :: Lens' Course (Maybe Text)-cUpdateTime- = lens _cUpdateTime (\ s a -> s{_cUpdateTime = a})---- | The identifier of the owner of a course. When specified as a parameter--- of a create course request, this field is required. The identifier can--- be one of the following: * the numeric identifier for the user * the--- email address of the user * the string literal \`\"me\"\`, indicating--- the requesting user This must be set in a create request. Specifying--- this field in a course update mask results in an \`INVALID_ARGUMENT\`--- error.-cOwnerId :: Lens' Course (Maybe Text)-cOwnerId = lens _cOwnerId (\ s a -> s{_cOwnerId = a})---- | Name of the course. For example, \"10th Grade Biology\". The name is--- required. It must be between 1 and 750 characters and a valid UTF-8--- string.-cName :: Lens' Course (Maybe Text)-cName = lens _cName (\ s a -> s{_cName = a})---- | Identifier for this course assigned by Classroom. When creating a--- course, you may optionally set this identifier to an alias string in the--- request to create a corresponding alias. The \`id\` is still assigned by--- Classroom and cannot be updated after the course is created. Specifying--- this field in a course update mask results in an error.-cId :: Lens' Course (Maybe Text)-cId = lens _cId (\ s a -> s{_cId = a})---- | Absolute link to this course in the Classroom web UI. Read-only.-cAlternateLink :: Lens' Course (Maybe Text)-cAlternateLink- = lens _cAlternateLink- (\ s a -> s{_cAlternateLink = a})---- | The email address of a Google group containing all members of the--- course. This group does not accept email and can only be used for--- permissions. Read-only.-cCourseGroupEmail :: Lens' Course (Maybe Text)-cCourseGroupEmail- = lens _cCourseGroupEmail- (\ s a -> s{_cCourseGroupEmail = a})---- | Optional description. For example, \"We\'ll be learning about the--- structure of living creatures from a combination of textbooks, guest--- lectures, and lab work. Expect to be excited!\" If set, this field must--- be a valid UTF-8 string and no longer than 30,000 characters.-cDescription :: Lens' Course (Maybe Text)-cDescription- = lens _cDescription (\ s a -> s{_cDescription = a})---- | Optional heading for the description. For example, \"Welcome to 10th--- Grade Biology.\" If set, this field must be a valid UTF-8 string and no--- longer than 3600 characters.-cDescriptionHeading :: Lens' Course (Maybe Text)-cDescriptionHeading- = lens _cDescriptionHeading- (\ s a -> s{_cDescriptionHeading = a})---- | Section of the course. For example, \"Period 2\". If set, this field--- must be a valid UTF-8 string and no longer than 2800 characters.-cSection :: Lens' Course (Maybe Text)-cSection = lens _cSection (\ s a -> s{_cSection = a})--instance FromJSON Course where- parseJSON- = withObject "Course"- (\ o ->- Course' <$>- (o .:? "creationTime") <*> (o .:? "room") <*>- (o .:? "courseMaterialSets" .!= mempty)- <*> (o .:? "teacherGroupEmail")- <*> (o .:? "teacherFolder")- <*> (o .:? "courseState")- <*> (o .:? "guardiansEnabled")- <*> (o .:? "enrollmentCode")- <*> (o .:? "updateTime")- <*> (o .:? "ownerId")- <*> (o .:? "name")- <*> (o .:? "id")- <*> (o .:? "alternateLink")- <*> (o .:? "courseGroupEmail")- <*> (o .:? "description")- <*> (o .:? "descriptionHeading")- <*> (o .:? "section"))--instance ToJSON Course where- toJSON Course'{..}- = object- (catMaybes- [("creationTime" .=) <$> _cCreationTime,- ("room" .=) <$> _cRoom,- ("courseMaterialSets" .=) <$> _cCourseMaterialSets,- ("teacherGroupEmail" .=) <$> _cTeacherGroupEmail,- ("teacherFolder" .=) <$> _cTeacherFolder,- ("courseState" .=) <$> _cCourseState,- ("guardiansEnabled" .=) <$> _cGuardiansEnabled,- ("enrollmentCode" .=) <$> _cEnrollmentCode,- ("updateTime" .=) <$> _cUpdateTime,- ("ownerId" .=) <$> _cOwnerId, ("name" .=) <$> _cName,- ("id" .=) <$> _cId,- ("alternateLink" .=) <$> _cAlternateLink,- ("courseGroupEmail" .=) <$> _cCourseGroupEmail,- ("description" .=) <$> _cDescription,- ("descriptionHeading" .=) <$> _cDescriptionHeading,- ("section" .=) <$> _cSection])---- | Represents a time of day. The date and time zone are either not--- significant or are specified elsewhere. An API may chose to allow leap--- seconds. Related types are google.type.Date and--- \`google.protobuf.Timestamp\`.------ /See:/ 'timeOfDay' smart constructor.-data TimeOfDay' = TimeOfDay''- { _todNanos :: !(Maybe (Textual Int32))- , _todHours :: !(Maybe (Textual Int32))- , _todMinutes :: !(Maybe (Textual Int32))- , _todSeconds :: !(Maybe (Textual Int32))- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'TimeOfDay' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'todNanos'------ * 'todHours'------ * 'todMinutes'------ * 'todSeconds'-timeOfDay- :: TimeOfDay'-timeOfDay =- TimeOfDay''- { _todNanos = Nothing- , _todHours = Nothing- , _todMinutes = Nothing- , _todSeconds = Nothing- }---- | Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.-todNanos :: Lens' TimeOfDay' (Maybe Int32)-todNanos- = lens _todNanos (\ s a -> s{_todNanos = a}) .- mapping _Coerce---- | Hours of day in 24 hour format. Should be from 0 to 23. An API may--- choose to allow the value \"24:00:00\" for scenarios like business--- closing time.-todHours :: Lens' TimeOfDay' (Maybe Int32)-todHours- = lens _todHours (\ s a -> s{_todHours = a}) .- mapping _Coerce---- | Minutes of hour of day. Must be from 0 to 59.-todMinutes :: Lens' TimeOfDay' (Maybe Int32)-todMinutes- = lens _todMinutes (\ s a -> s{_todMinutes = a}) .- mapping _Coerce---- | Seconds of minutes of the time. Must normally be from 0 to 59. An API--- may allow the value 60 if it allows leap-seconds.-todSeconds :: Lens' TimeOfDay' (Maybe Int32)-todSeconds- = lens _todSeconds (\ s a -> s{_todSeconds = a}) .- mapping _Coerce--instance FromJSON TimeOfDay' where- parseJSON- = withObject "TimeOfDay"- (\ o ->- TimeOfDay'' <$>- (o .:? "nanos") <*> (o .:? "hours") <*>- (o .:? "minutes")- <*> (o .:? "seconds"))--instance ToJSON TimeOfDay' where- toJSON TimeOfDay''{..}- = object- (catMaybes- [("nanos" .=) <$> _todNanos,- ("hours" .=) <$> _todHours,- ("minutes" .=) <$> _todMinutes,- ("seconds" .=) <$> _todSeconds])---- | Response when listing guardian invitations.------ /See:/ 'listGuardianInvitationsResponse' smart constructor.-data ListGuardianInvitationsResponse = ListGuardianInvitationsResponse'- { _lgirNextPageToken :: !(Maybe Text)- , _lgirGuardianInvitations :: !(Maybe [GuardianInvitation])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListGuardianInvitationsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lgirNextPageToken'------ * 'lgirGuardianInvitations'-listGuardianInvitationsResponse- :: ListGuardianInvitationsResponse-listGuardianInvitationsResponse =- ListGuardianInvitationsResponse'- { _lgirNextPageToken = Nothing- , _lgirGuardianInvitations = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lgirNextPageToken :: Lens' ListGuardianInvitationsResponse (Maybe Text)-lgirNextPageToken- = lens _lgirNextPageToken- (\ s a -> s{_lgirNextPageToken = a})---- | Guardian invitations that matched the list request.-lgirGuardianInvitations :: Lens' ListGuardianInvitationsResponse [GuardianInvitation]-lgirGuardianInvitations- = lens _lgirGuardianInvitations- (\ s a -> s{_lgirGuardianInvitations = a})- . _Default- . _Coerce--instance FromJSON ListGuardianInvitationsResponse- where- parseJSON- = withObject "ListGuardianInvitationsResponse"- (\ o ->- ListGuardianInvitationsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "guardianInvitations" .!= mempty))--instance ToJSON ListGuardianInvitationsResponse where- toJSON ListGuardianInvitationsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lgirNextPageToken,- ("guardianInvitations" .=) <$>- _lgirGuardianInvitations])---- | Additional details for assignments.------ /See:/ 'assignment' smart constructor.-newtype Assignment = Assignment'- { _aStudentWorkFolder :: Maybe DriveFolder- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Assignment' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'aStudentWorkFolder'-assignment- :: Assignment-assignment =- Assignment'- { _aStudentWorkFolder = Nothing- }---- | Drive folder where attachments from student submissions are placed. This--- is only populated for course teachers.-aStudentWorkFolder :: Lens' Assignment (Maybe DriveFolder)-aStudentWorkFolder- = lens _aStudentWorkFolder- (\ s a -> s{_aStudentWorkFolder = a})--instance FromJSON Assignment where- parseJSON- = withObject "Assignment"- (\ o -> Assignment' <$> (o .:? "studentWorkFolder"))--instance ToJSON Assignment where- toJSON Assignment'{..}- = object- (catMaybes- [("studentWorkFolder" .=) <$> _aStudentWorkFolder])---- | Response when listing students.------ /See:/ 'listStudentsResponse' smart constructor.-data ListStudentsResponse = ListStudentsResponse'- { _lsrNextPageToken :: !(Maybe Text)- , _lsrStudents :: !(Maybe [Student])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListStudentsResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'lsrNextPageToken'------ * 'lsrStudents'-listStudentsResponse- :: ListStudentsResponse-listStudentsResponse =- ListStudentsResponse'- { _lsrNextPageToken = Nothing- , _lsrStudents = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-lsrNextPageToken :: Lens' ListStudentsResponse (Maybe Text)-lsrNextPageToken- = lens _lsrNextPageToken- (\ s a -> s{_lsrNextPageToken = a})---- | Students who match the list request.-lsrStudents :: Lens' ListStudentsResponse [Student]-lsrStudents- = lens _lsrStudents (\ s a -> s{_lsrStudents = a}) .- _Default- . _Coerce--instance FromJSON ListStudentsResponse where- parseJSON- = withObject "ListStudentsResponse"- (\ o ->- ListStudentsResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "students" .!= mempty))--instance ToJSON ListStudentsResponse where- toJSON ListStudentsResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _lsrNextPageToken,- ("students" .=) <$> _lsrStudents])---- | Drive file that is used as material for course work.------ /See:/ 'sharedDriveFile' smart constructor.-data SharedDriveFile = SharedDriveFile'- { _sdfDriveFile :: !(Maybe DriveFile)- , _sdfShareMode :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'SharedDriveFile' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sdfDriveFile'------ * 'sdfShareMode'-sharedDriveFile- :: SharedDriveFile-sharedDriveFile =- SharedDriveFile'- { _sdfDriveFile = Nothing- , _sdfShareMode = Nothing- }---- | Drive file details.-sdfDriveFile :: Lens' SharedDriveFile (Maybe DriveFile)-sdfDriveFile- = lens _sdfDriveFile (\ s a -> s{_sdfDriveFile = a})---- | Mechanism by which students access the Drive item.-sdfShareMode :: Lens' SharedDriveFile (Maybe Text)-sdfShareMode- = lens _sdfShareMode (\ s a -> s{_sdfShareMode = a})--instance FromJSON SharedDriveFile where- parseJSON- = withObject "SharedDriveFile"- (\ o ->- SharedDriveFile' <$>- (o .:? "driveFile") <*> (o .:? "shareMode"))--instance ToJSON SharedDriveFile where- toJSON SharedDriveFile'{..}- = object- (catMaybes- [("driveFile" .=) <$> _sdfDriveFile,- ("shareMode" .=) <$> _sdfShareMode])---- | Alternative identifier for a course. An alias uniquely identifies a--- course. It must be unique within one of the following scopes: * domain:--- A domain-scoped alias is visible to all users within the alias--- creator\'s domain and can be created only by a domain admin. A--- domain-scoped alias is often used when a course has an identifier--- external to Classroom. * project: A project-scoped alias is visible to--- any request from an application using the Developer Console project ID--- that created the alias and can be created by any project. A--- project-scoped alias is often used when an application has alternative--- identifiers. A random value can also be used to avoid duplicate courses--- in the event of transmission failures, as retrying a request will return--- \`ALREADY_EXISTS\` if a previous one has succeeded.------ /See:/ 'courseAlias' smart constructor.-newtype CourseAlias = CourseAlias'- { _caAlias :: Maybe Text- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'CourseAlias' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'caAlias'-courseAlias- :: CourseAlias-courseAlias =- CourseAlias'- { _caAlias = Nothing- }---- | Alias string. The format of the string indicates the desired alias--- scoping. * \`d:\` indicates a domain-scoped alias. Example:--- \`d:math_101\` * \`p:\` indicates a project-scoped alias. Example:--- \`p:abc123\` This field has a maximum length of 256 characters.-caAlias :: Lens' CourseAlias (Maybe Text)-caAlias = lens _caAlias (\ s a -> s{_caAlias = a})--instance FromJSON CourseAlias where- parseJSON- = withObject "CourseAlias"- (\ o -> CourseAlias' <$> (o .:? "alias"))--instance ToJSON CourseAlias where- toJSON CourseAlias'{..}- = object (catMaybes [("alias" .=) <$> _caAlias])---- | Google Forms item.------ /See:/ 'form' smart constructor.-data Form = Form'- { _fThumbnailURL :: !(Maybe Text)- , _fFormURL :: !(Maybe Text)- , _fTitle :: !(Maybe Text)- , _fResponseURL :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Form' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'fThumbnailURL'------ * 'fFormURL'------ * 'fTitle'------ * 'fResponseURL'-form- :: Form-form =- Form'- { _fThumbnailURL = Nothing- , _fFormURL = Nothing- , _fTitle = Nothing- , _fResponseURL = Nothing- }---- | URL of a thumbnail image of the Form. Read-only.-fThumbnailURL :: Lens' Form (Maybe Text)-fThumbnailURL- = lens _fThumbnailURL- (\ s a -> s{_fThumbnailURL = a})---- | URL of the form.-fFormURL :: Lens' Form (Maybe Text)-fFormURL = lens _fFormURL (\ s a -> s{_fFormURL = a})---- | Title of the Form. Read-only.-fTitle :: Lens' Form (Maybe Text)-fTitle = lens _fTitle (\ s a -> s{_fTitle = a})---- | URL of the form responses document. Only set if respsonses have been--- recorded and only when the requesting user is an editor of the form.--- Read-only.-fResponseURL :: Lens' Form (Maybe Text)-fResponseURL- = lens _fResponseURL (\ s a -> s{_fResponseURL = a})--instance FromJSON Form where- parseJSON- = withObject "Form"- (\ o ->- Form' <$>- (o .:? "thumbnailUrl") <*> (o .:? "formUrl") <*>- (o .:? "title")- <*> (o .:? "responseUrl"))--instance ToJSON Form where- toJSON Form'{..}- = object- (catMaybes- [("thumbnailUrl" .=) <$> _fThumbnailURL,- ("formUrl" .=) <$> _fFormURL,- ("title" .=) <$> _fTitle,- ("responseUrl" .=) <$> _fResponseURL])---- | Response when listing teachers.------ /See:/ 'listTeachersResponse' smart constructor.-data ListTeachersResponse = ListTeachersResponse'- { _ltrNextPageToken :: !(Maybe Text)- , _ltrTeachers :: !(Maybe [Teacher])- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'ListTeachersResponse' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'ltrNextPageToken'------ * 'ltrTeachers'-listTeachersResponse- :: ListTeachersResponse-listTeachersResponse =- ListTeachersResponse'- { _ltrNextPageToken = Nothing- , _ltrTeachers = Nothing- }---- | Token identifying the next page of results to return. If empty, no--- further results are available.-ltrNextPageToken :: Lens' ListTeachersResponse (Maybe Text)-ltrNextPageToken- = lens _ltrNextPageToken- (\ s a -> s{_ltrNextPageToken = a})---- | Teachers who match the list request.-ltrTeachers :: Lens' ListTeachersResponse [Teacher]-ltrTeachers- = lens _ltrTeachers (\ s a -> s{_ltrTeachers = a}) .- _Default- . _Coerce--instance FromJSON ListTeachersResponse where- parseJSON- = withObject "ListTeachersResponse"- (\ o ->- ListTeachersResponse' <$>- (o .:? "nextPageToken") <*>- (o .:? "teachers" .!= mempty))--instance ToJSON ListTeachersResponse where- toJSON ListTeachersResponse'{..}- = object- (catMaybes- [("nextPageToken" .=) <$> _ltrNextPageToken,- ("teachers" .=) <$> _ltrTeachers])---- | Student in a course.------ /See:/ 'student' smart constructor.-data Student = Student'- { _sCourseId :: !(Maybe Text)- , _sProFile :: !(Maybe UserProFile)- , _sStudentWorkFolder :: !(Maybe DriveFolder)- , _sUserId :: !(Maybe Text)- } deriving (Eq,Show,Data,Typeable,Generic)---- | Creates a value of 'Student' with the minimum fields required to make a request.------ Use one of the following lenses to modify other fields as desired:------ * 'sCourseId'------ * 'sProFile'------ * 'sStudentWorkFolder'------ * 'sUserId'-student- :: Student-student =- Student'- { _sCourseId = Nothing- , _sProFile = Nothing- , _sStudentWorkFolder = Nothing- , _sUserId = Nothing- }---- | Identifier of the course. Read-only.-sCourseId :: Lens' Student (Maybe Text)-sCourseId- = lens _sCourseId (\ s a -> s{_sCourseId = a})---- | Global user information for the student. Read-only.-sProFile :: Lens' Student (Maybe UserProFile)-sProFile = lens _sProFile (\ s a -> s{_sProFile = a})---- | Information about a Drive Folder for this student\'s work in this--- course. Only visible to the student and domain administrators.--- Read-only.-sStudentWorkFolder :: Lens' Student (Maybe DriveFolder)-sStudentWorkFolder- = lens _sStudentWorkFolder- (\ s a -> s{_sStudentWorkFolder = a})---- | Identifier of the user. When specified as a parameter of a request, this--- identifier can be one of the following: * the numeric identifier for the--- user * the email address of the user * the string literal \`\"me\"\`,--- indicating the requesting user-sUserId :: Lens' Student (Maybe Text)-sUserId = lens _sUserId (\ s a -> s{_sUserId = a})--instance FromJSON Student where- parseJSON- = withObject "Student"- (\ o ->- Student' <$>- (o .:? "courseId") <*> (o .:? "profile") <*>- (o .:? "studentWorkFolder")- <*> (o .:? "userId"))--instance ToJSON Student where- toJSON Student'{..}- = object- (catMaybes- [("courseId" .=) <$> _sCourseId,- ("profile" .=) <$> _sProFile,- ("studentWorkFolder" .=) <$> _sStudentWorkFolder,- ("userId" .=) <$> _sUserId])+ { _cwCreationTime :: !(Maybe DateTime')+ , _cwScheduledTime :: !(Maybe DateTime')+ , _cwState :: !(Maybe CourseWorkState)+ , _cwAssigneeMode :: !(Maybe CourseWorkAssigneeMode)+ , _cwMaterials :: !(Maybe [Material])+ , _cwCourseId :: !(Maybe Text)+ , _cwIndividualStudentsOptions :: !(Maybe IndividualStudentsOptions)+ , _cwMaxPoints :: !(Maybe (Textual Double))+ , _cwWorkType :: !(Maybe CourseWorkWorkType)+ , _cwDueTime :: !(Maybe TimeOfDay')+ , _cwAssociatedWithDeveloper :: !(Maybe Bool)+ , _cwUpdateTime :: !(Maybe DateTime')+ , _cwMultipleChoiceQuestion :: !(Maybe MultipleChoiceQuestion)+ , _cwId :: !(Maybe Text)+ , _cwSubmissionModificationMode :: !(Maybe CourseWorkSubmissionModificationMode)+ , _cwDueDate :: !(Maybe Date)+ , _cwCreatorUserId :: !(Maybe Text)+ , _cwTitle :: !(Maybe Text)+ , _cwAlternateLink :: !(Maybe Text)+ , _cwAssignment :: !(Maybe Assignment)+ , _cwDescription :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CourseWork' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cwCreationTime'+--+-- * 'cwScheduledTime'+--+-- * 'cwState'+--+-- * 'cwAssigneeMode'+--+-- * 'cwMaterials'+--+-- * 'cwCourseId'+--+-- * 'cwIndividualStudentsOptions'+--+-- * 'cwMaxPoints'+--+-- * 'cwWorkType'+--+-- * 'cwDueTime'+--+-- * 'cwAssociatedWithDeveloper'+--+-- * 'cwUpdateTime'+--+-- * 'cwMultipleChoiceQuestion'+--+-- * 'cwId'+--+-- * 'cwSubmissionModificationMode'+--+-- * 'cwDueDate'+--+-- * 'cwCreatorUserId'+--+-- * 'cwTitle'+--+-- * 'cwAlternateLink'+--+-- * 'cwAssignment'+--+-- * 'cwDescription'+courseWork+ :: CourseWork+courseWork =+ CourseWork'+ { _cwCreationTime = Nothing+ , _cwScheduledTime = Nothing+ , _cwState = Nothing+ , _cwAssigneeMode = Nothing+ , _cwMaterials = Nothing+ , _cwCourseId = Nothing+ , _cwIndividualStudentsOptions = Nothing+ , _cwMaxPoints = Nothing+ , _cwWorkType = Nothing+ , _cwDueTime = Nothing+ , _cwAssociatedWithDeveloper = Nothing+ , _cwUpdateTime = Nothing+ , _cwMultipleChoiceQuestion = Nothing+ , _cwId = Nothing+ , _cwSubmissionModificationMode = Nothing+ , _cwDueDate = Nothing+ , _cwCreatorUserId = Nothing+ , _cwTitle = Nothing+ , _cwAlternateLink = Nothing+ , _cwAssignment = Nothing+ , _cwDescription = Nothing+ }++-- | Timestamp when this course work was created. Read-only.+cwCreationTime :: Lens' CourseWork (Maybe UTCTime)+cwCreationTime+ = lens _cwCreationTime+ (\ s a -> s{_cwCreationTime = a})+ . mapping _DateTime++-- | Optional timestamp when this course work is scheduled to be published.+cwScheduledTime :: Lens' CourseWork (Maybe UTCTime)+cwScheduledTime+ = lens _cwScheduledTime+ (\ s a -> s{_cwScheduledTime = a})+ . mapping _DateTime++-- | Status of this course work. If unspecified, the default state is+-- \`DRAFT\`.+cwState :: Lens' CourseWork (Maybe CourseWorkState)+cwState = lens _cwState (\ s a -> s{_cwState = a})++-- | Assignee mode of the coursework. If unspecified, the default value is+-- \`ALL_STUDENTS\`.+cwAssigneeMode :: Lens' CourseWork (Maybe CourseWorkAssigneeMode)+cwAssigneeMode+ = lens _cwAssigneeMode+ (\ s a -> s{_cwAssigneeMode = a})++-- | Additional materials. CourseWork must have no more than 20 material+-- items.+cwMaterials :: Lens' CourseWork [Material]+cwMaterials+ = lens _cwMaterials (\ s a -> s{_cwMaterials = a}) .+ _Default+ . _Coerce++-- | Identifier of the course. Read-only.+cwCourseId :: Lens' CourseWork (Maybe Text)+cwCourseId+ = lens _cwCourseId (\ s a -> s{_cwCourseId = a})++-- | Identifiers of students with access to the coursework. This field is set+-- only if \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`. If the+-- \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`, then only students+-- specified in this field will be assigned the coursework.+cwIndividualStudentsOptions :: Lens' CourseWork (Maybe IndividualStudentsOptions)+cwIndividualStudentsOptions+ = lens _cwIndividualStudentsOptions+ (\ s a -> s{_cwIndividualStudentsOptions = a})++-- | Maximum grade for this course work. If zero or unspecified, this+-- assignment is considered ungraded. This must be a non-negative integer+-- value.+cwMaxPoints :: Lens' CourseWork (Maybe Double)+cwMaxPoints+ = lens _cwMaxPoints (\ s a -> s{_cwMaxPoints = a}) .+ mapping _Coerce++-- | Type of this course work. The type is set when the course work is+-- created and cannot be changed.+cwWorkType :: Lens' CourseWork (Maybe CourseWorkWorkType)+cwWorkType+ = lens _cwWorkType (\ s a -> s{_cwWorkType = a})++-- | Optional time of day, in UTC, that submissions for this course work are+-- due. This must be specified if \`due_date\` is specified.+cwDueTime :: Lens' CourseWork (Maybe TimeOfDay')+cwDueTime+ = lens _cwDueTime (\ s a -> s{_cwDueTime = a})++-- | Whether this course work item is associated with the Developer Console+-- project making the request. See google.classroom.Work.CreateCourseWork+-- for more details. Read-only.+cwAssociatedWithDeveloper :: Lens' CourseWork (Maybe Bool)+cwAssociatedWithDeveloper+ = lens _cwAssociatedWithDeveloper+ (\ s a -> s{_cwAssociatedWithDeveloper = a})++-- | Timestamp of the most recent change to this course work. Read-only.+cwUpdateTime :: Lens' CourseWork (Maybe UTCTime)+cwUpdateTime+ = lens _cwUpdateTime (\ s a -> s{_cwUpdateTime = a})+ . mapping _DateTime++-- | Multiple choice question details. For read operations, this field is+-- populated only when \`work_type\` is \`MULTIPLE_CHOICE_QUESTION\`. For+-- write operations, this field must be specified when creating course work+-- with a \`work_type\` of \`MULTIPLE_CHOICE_QUESTION\`, and it must not be+-- set otherwise.+cwMultipleChoiceQuestion :: Lens' CourseWork (Maybe MultipleChoiceQuestion)+cwMultipleChoiceQuestion+ = lens _cwMultipleChoiceQuestion+ (\ s a -> s{_cwMultipleChoiceQuestion = a})++-- | Classroom-assigned identifier of this course work, unique per course.+-- Read-only.+cwId :: Lens' CourseWork (Maybe Text)+cwId = lens _cwId (\ s a -> s{_cwId = a})++-- | Setting to determine when students are allowed to modify submissions. If+-- unspecified, the default value is \`MODIFIABLE_UNTIL_TURNED_IN\`.+cwSubmissionModificationMode :: Lens' CourseWork (Maybe CourseWorkSubmissionModificationMode)+cwSubmissionModificationMode+ = lens _cwSubmissionModificationMode+ (\ s a -> s{_cwSubmissionModificationMode = a})++-- | Optional date, in UTC, that submissions for this course work are due.+-- This must be specified if \`due_time\` is specified.+cwDueDate :: Lens' CourseWork (Maybe Date)+cwDueDate+ = lens _cwDueDate (\ s a -> s{_cwDueDate = a})++-- | Identifier for the user that created the coursework. Read-only.+cwCreatorUserId :: Lens' CourseWork (Maybe Text)+cwCreatorUserId+ = lens _cwCreatorUserId+ (\ s a -> s{_cwCreatorUserId = a})++-- | Title of this course work. The title must be a valid UTF-8 string+-- containing between 1 and 3000 characters.+cwTitle :: Lens' CourseWork (Maybe Text)+cwTitle = lens _cwTitle (\ s a -> s{_cwTitle = a})++-- | Absolute link to this course work in the Classroom web UI. This is only+-- populated if \`state\` is \`PUBLISHED\`. Read-only.+cwAlternateLink :: Lens' CourseWork (Maybe Text)+cwAlternateLink+ = lens _cwAlternateLink+ (\ s a -> s{_cwAlternateLink = a})++-- | Assignment details. This is populated only when \`work_type\` is+-- \`ASSIGNMENT\`. Read-only.+cwAssignment :: Lens' CourseWork (Maybe Assignment)+cwAssignment+ = lens _cwAssignment (\ s a -> s{_cwAssignment = a})++-- | Optional description of this course work. If set, the description must+-- be a valid UTF-8 string containing no more than 30,000 characters.+cwDescription :: Lens' CourseWork (Maybe Text)+cwDescription+ = lens _cwDescription+ (\ s a -> s{_cwDescription = a})++instance FromJSON CourseWork where+ parseJSON+ = withObject "CourseWork"+ (\ o ->+ CourseWork' <$>+ (o .:? "creationTime") <*> (o .:? "scheduledTime")+ <*> (o .:? "state")+ <*> (o .:? "assigneeMode")+ <*> (o .:? "materials" .!= mempty)+ <*> (o .:? "courseId")+ <*> (o .:? "individualStudentsOptions")+ <*> (o .:? "maxPoints")+ <*> (o .:? "workType")+ <*> (o .:? "dueTime")+ <*> (o .:? "associatedWithDeveloper")+ <*> (o .:? "updateTime")+ <*> (o .:? "multipleChoiceQuestion")+ <*> (o .:? "id")+ <*> (o .:? "submissionModificationMode")+ <*> (o .:? "dueDate")+ <*> (o .:? "creatorUserId")+ <*> (o .:? "title")+ <*> (o .:? "alternateLink")+ <*> (o .:? "assignment")+ <*> (o .:? "description"))++instance ToJSON CourseWork where+ toJSON CourseWork'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _cwCreationTime,+ ("scheduledTime" .=) <$> _cwScheduledTime,+ ("state" .=) <$> _cwState,+ ("assigneeMode" .=) <$> _cwAssigneeMode,+ ("materials" .=) <$> _cwMaterials,+ ("courseId" .=) <$> _cwCourseId,+ ("individualStudentsOptions" .=) <$>+ _cwIndividualStudentsOptions,+ ("maxPoints" .=) <$> _cwMaxPoints,+ ("workType" .=) <$> _cwWorkType,+ ("dueTime" .=) <$> _cwDueTime,+ ("associatedWithDeveloper" .=) <$>+ _cwAssociatedWithDeveloper,+ ("updateTime" .=) <$> _cwUpdateTime,+ ("multipleChoiceQuestion" .=) <$>+ _cwMultipleChoiceQuestion,+ ("id" .=) <$> _cwId,+ ("submissionModificationMode" .=) <$>+ _cwSubmissionModificationMode,+ ("dueDate" .=) <$> _cwDueDate,+ ("creatorUserId" .=) <$> _cwCreatorUserId,+ ("title" .=) <$> _cwTitle,+ ("alternateLink" .=) <$> _cwAlternateLink,+ ("assignment" .=) <$> _cwAssignment,+ ("description" .=) <$> _cwDescription])++-- | The history of each grade on this submission.+--+-- /See:/ 'gradeHistory' smart constructor.+data GradeHistory = GradeHistory'+ { _ghGradeTimestamp :: !(Maybe DateTime')+ , _ghMaxPoints :: !(Maybe (Textual Double))+ , _ghPointsEarned :: !(Maybe (Textual Double))+ , _ghActorUserId :: !(Maybe Text)+ , _ghGradeChangeType :: !(Maybe GradeHistoryGradeChangeType)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GradeHistory' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ghGradeTimestamp'+--+-- * 'ghMaxPoints'+--+-- * 'ghPointsEarned'+--+-- * 'ghActorUserId'+--+-- * 'ghGradeChangeType'+gradeHistory+ :: GradeHistory+gradeHistory =+ GradeHistory'+ { _ghGradeTimestamp = Nothing+ , _ghMaxPoints = Nothing+ , _ghPointsEarned = Nothing+ , _ghActorUserId = Nothing+ , _ghGradeChangeType = Nothing+ }++-- | When the grade of the submission was changed.+ghGradeTimestamp :: Lens' GradeHistory (Maybe UTCTime)+ghGradeTimestamp+ = lens _ghGradeTimestamp+ (\ s a -> s{_ghGradeTimestamp = a})+ . mapping _DateTime++-- | The denominator of the grade at this time in the submission grade+-- history.+ghMaxPoints :: Lens' GradeHistory (Maybe Double)+ghMaxPoints+ = lens _ghMaxPoints (\ s a -> s{_ghMaxPoints = a}) .+ mapping _Coerce++-- | The numerator of the grade at this time in the submission grade history.+ghPointsEarned :: Lens' GradeHistory (Maybe Double)+ghPointsEarned+ = lens _ghPointsEarned+ (\ s a -> s{_ghPointsEarned = a})+ . mapping _Coerce++-- | The teacher who made the grade change.+ghActorUserId :: Lens' GradeHistory (Maybe Text)+ghActorUserId+ = lens _ghActorUserId+ (\ s a -> s{_ghActorUserId = a})++-- | The type of grade change at this time in the submission grade history.+ghGradeChangeType :: Lens' GradeHistory (Maybe GradeHistoryGradeChangeType)+ghGradeChangeType+ = lens _ghGradeChangeType+ (\ s a -> s{_ghGradeChangeType = a})++instance FromJSON GradeHistory where+ parseJSON+ = withObject "GradeHistory"+ (\ o ->+ GradeHistory' <$>+ (o .:? "gradeTimestamp") <*> (o .:? "maxPoints") <*>+ (o .:? "pointsEarned")+ <*> (o .:? "actorUserId")+ <*> (o .:? "gradeChangeType"))++instance ToJSON GradeHistory where+ toJSON GradeHistory'{..}+ = object+ (catMaybes+ [("gradeTimestamp" .=) <$> _ghGradeTimestamp,+ ("maxPoints" .=) <$> _ghMaxPoints,+ ("pointsEarned" .=) <$> _ghPointsEarned,+ ("actorUserId" .=) <$> _ghActorUserId,+ ("gradeChangeType" .=) <$> _ghGradeChangeType])++-- | Information about a \`Feed\` with a \`feed_type\` of+-- \`COURSE_WORK_CHANGES\`.+--+-- /See:/ 'courseWorkChangesInfo' smart constructor.+newtype CourseWorkChangesInfo = CourseWorkChangesInfo'+ { _cwciCourseId :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CourseWorkChangesInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cwciCourseId'+courseWorkChangesInfo+ :: CourseWorkChangesInfo+courseWorkChangesInfo =+ CourseWorkChangesInfo'+ { _cwciCourseId = Nothing+ }++-- | The \`course_id\` of the course to subscribe to work changes for.+cwciCourseId :: Lens' CourseWorkChangesInfo (Maybe Text)+cwciCourseId+ = lens _cwciCourseId (\ s a -> s{_cwciCourseId = a})++instance FromJSON CourseWorkChangesInfo where+ parseJSON+ = withObject "CourseWorkChangesInfo"+ (\ o ->+ CourseWorkChangesInfo' <$> (o .:? "courseId"))++instance ToJSON CourseWorkChangesInfo where+ toJSON CourseWorkChangesInfo'{..}+ = object+ (catMaybes [("courseId" .=) <$> _cwciCourseId])++-- | Request to modify assignee mode and options of a coursework.+--+-- /See:/ 'modifyCourseWorkAssigneesRequest' smart constructor.+data ModifyCourseWorkAssigneesRequest = ModifyCourseWorkAssigneesRequest'+ { _mcwarAssigneeMode :: !(Maybe ModifyCourseWorkAssigneesRequestAssigneeMode)+ , _mcwarModifyIndividualStudentsOptions :: !(Maybe ModifyIndividualStudentsOptions)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyCourseWorkAssigneesRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mcwarAssigneeMode'+--+-- * 'mcwarModifyIndividualStudentsOptions'+modifyCourseWorkAssigneesRequest+ :: ModifyCourseWorkAssigneesRequest+modifyCourseWorkAssigneesRequest =+ ModifyCourseWorkAssigneesRequest'+ { _mcwarAssigneeMode = Nothing+ , _mcwarModifyIndividualStudentsOptions = Nothing+ }++-- | Mode of the coursework describing whether it will be assigned to all+-- students or specified individual students.+mcwarAssigneeMode :: Lens' ModifyCourseWorkAssigneesRequest (Maybe ModifyCourseWorkAssigneesRequestAssigneeMode)+mcwarAssigneeMode+ = lens _mcwarAssigneeMode+ (\ s a -> s{_mcwarAssigneeMode = a})++-- | Set which students are assigned or not assigned to the coursework. Must+-- be specified only when \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`.+mcwarModifyIndividualStudentsOptions :: Lens' ModifyCourseWorkAssigneesRequest (Maybe ModifyIndividualStudentsOptions)+mcwarModifyIndividualStudentsOptions+ = lens _mcwarModifyIndividualStudentsOptions+ (\ s a ->+ s{_mcwarModifyIndividualStudentsOptions = a})++instance FromJSON ModifyCourseWorkAssigneesRequest+ where+ parseJSON+ = withObject "ModifyCourseWorkAssigneesRequest"+ (\ o ->+ ModifyCourseWorkAssigneesRequest' <$>+ (o .:? "assigneeMode") <*>+ (o .:? "modifyIndividualStudentsOptions"))++instance ToJSON ModifyCourseWorkAssigneesRequest+ where+ toJSON ModifyCourseWorkAssigneesRequest'{..}+ = object+ (catMaybes+ [("assigneeMode" .=) <$> _mcwarAssigneeMode,+ ("modifyIndividualStudentsOptions" .=) <$>+ _mcwarModifyIndividualStudentsOptions])++-- | Representation of a Google Drive file.+--+-- /See:/ 'driveFile' smart constructor.+data DriveFile = DriveFile'+ { _dfThumbnailURL :: !(Maybe Text)+ , _dfId :: !(Maybe Text)+ , _dfTitle :: !(Maybe Text)+ , _dfAlternateLink :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DriveFile' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dfThumbnailURL'+--+-- * 'dfId'+--+-- * 'dfTitle'+--+-- * 'dfAlternateLink'+driveFile+ :: DriveFile+driveFile =+ DriveFile'+ { _dfThumbnailURL = Nothing+ , _dfId = Nothing+ , _dfTitle = Nothing+ , _dfAlternateLink = Nothing+ }++-- | URL of a thumbnail image of the Drive item. Read-only.+dfThumbnailURL :: Lens' DriveFile (Maybe Text)+dfThumbnailURL+ = lens _dfThumbnailURL+ (\ s a -> s{_dfThumbnailURL = a})++-- | Drive API resource ID.+dfId :: Lens' DriveFile (Maybe Text)+dfId = lens _dfId (\ s a -> s{_dfId = a})++-- | Title of the Drive item. Read-only.+dfTitle :: Lens' DriveFile (Maybe Text)+dfTitle = lens _dfTitle (\ s a -> s{_dfTitle = a})++-- | URL that can be used to access the Drive item. Read-only.+dfAlternateLink :: Lens' DriveFile (Maybe Text)+dfAlternateLink+ = lens _dfAlternateLink+ (\ s a -> s{_dfAlternateLink = a})++instance FromJSON DriveFile where+ parseJSON+ = withObject "DriveFile"+ (\ o ->+ DriveFile' <$>+ (o .:? "thumbnailUrl") <*> (o .:? "id") <*>+ (o .:? "title")+ <*> (o .:? "alternateLink"))++instance ToJSON DriveFile where+ toJSON DriveFile'{..}+ = object+ (catMaybes+ [("thumbnailUrl" .=) <$> _dfThumbnailURL,+ ("id" .=) <$> _dfId, ("title" .=) <$> _dfTitle,+ ("alternateLink" .=) <$> _dfAlternateLink])++-- | An invitation to become the guardian of a specified user, sent to a+-- specified email address.+--+-- /See:/ 'guardianInvitation' smart constructor.+data GuardianInvitation = GuardianInvitation'+ { _giCreationTime :: !(Maybe DateTime')+ , _giStudentId :: !(Maybe Text)+ , _giState :: !(Maybe GuardianInvitationState)+ , _giInvitationId :: !(Maybe Text)+ , _giInvitedEmailAddress :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GuardianInvitation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'giCreationTime'+--+-- * 'giStudentId'+--+-- * 'giState'+--+-- * 'giInvitationId'+--+-- * 'giInvitedEmailAddress'+guardianInvitation+ :: GuardianInvitation+guardianInvitation =+ GuardianInvitation'+ { _giCreationTime = Nothing+ , _giStudentId = Nothing+ , _giState = Nothing+ , _giInvitationId = Nothing+ , _giInvitedEmailAddress = Nothing+ }++-- | The time that this invitation was created. Read-only.+giCreationTime :: Lens' GuardianInvitation (Maybe UTCTime)+giCreationTime+ = lens _giCreationTime+ (\ s a -> s{_giCreationTime = a})+ . mapping _DateTime++-- | ID of the student (in standard format)+giStudentId :: Lens' GuardianInvitation (Maybe Text)+giStudentId+ = lens _giStudentId (\ s a -> s{_giStudentId = a})++-- | The state that this invitation is in.+giState :: Lens' GuardianInvitation (Maybe GuardianInvitationState)+giState = lens _giState (\ s a -> s{_giState = a})++-- | Unique identifier for this invitation. Read-only.+giInvitationId :: Lens' GuardianInvitation (Maybe Text)+giInvitationId+ = lens _giInvitationId+ (\ s a -> s{_giInvitationId = a})++-- | Email address that the invitation was sent to. This field is only+-- visible to domain administrators.+giInvitedEmailAddress :: Lens' GuardianInvitation (Maybe Text)+giInvitedEmailAddress+ = lens _giInvitedEmailAddress+ (\ s a -> s{_giInvitedEmailAddress = a})++instance FromJSON GuardianInvitation where+ parseJSON+ = withObject "GuardianInvitation"+ (\ o ->+ GuardianInvitation' <$>+ (o .:? "creationTime") <*> (o .:? "studentId") <*>+ (o .:? "state")+ <*> (o .:? "invitationId")+ <*> (o .:? "invitedEmailAddress"))++instance ToJSON GuardianInvitation where+ toJSON GuardianInvitation'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _giCreationTime,+ ("studentId" .=) <$> _giStudentId,+ ("state" .=) <$> _giState,+ ("invitationId" .=) <$> _giInvitationId,+ ("invitedEmailAddress" .=) <$>+ _giInvitedEmailAddress])++-- | A class of notifications that an application can register to receive.+-- For example: \"all roster changes for a domain\".+--+-- /See:/ 'feed' smart constructor.+data Feed = Feed'+ { _fCourseWorkChangesInfo :: !(Maybe CourseWorkChangesInfo)+ , _fFeedType :: !(Maybe FeedFeedType)+ , _fCourseRosterChangesInfo :: !(Maybe CourseRosterChangesInfo)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Feed' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fCourseWorkChangesInfo'+--+-- * 'fFeedType'+--+-- * 'fCourseRosterChangesInfo'+feed+ :: Feed+feed =+ Feed'+ { _fCourseWorkChangesInfo = Nothing+ , _fFeedType = Nothing+ , _fCourseRosterChangesInfo = Nothing+ }++-- | Information about a \`Feed\` with a \`feed_type\` of+-- \`COURSE_WORK_CHANGES\`. This field must be specified if \`feed_type\`+-- is \`COURSE_WORK_CHANGES\`.+fCourseWorkChangesInfo :: Lens' Feed (Maybe CourseWorkChangesInfo)+fCourseWorkChangesInfo+ = lens _fCourseWorkChangesInfo+ (\ s a -> s{_fCourseWorkChangesInfo = a})++-- | The type of feed.+fFeedType :: Lens' Feed (Maybe FeedFeedType)+fFeedType+ = lens _fFeedType (\ s a -> s{_fFeedType = a})++-- | Information about a \`Feed\` with a \`feed_type\` of+-- \`COURSE_ROSTER_CHANGES\`. This field must be specified if \`feed_type\`+-- is \`COURSE_ROSTER_CHANGES\`.+fCourseRosterChangesInfo :: Lens' Feed (Maybe CourseRosterChangesInfo)+fCourseRosterChangesInfo+ = lens _fCourseRosterChangesInfo+ (\ s a -> s{_fCourseRosterChangesInfo = a})++instance FromJSON Feed where+ parseJSON+ = withObject "Feed"+ (\ o ->+ Feed' <$>+ (o .:? "courseWorkChangesInfo") <*>+ (o .:? "feedType")+ <*> (o .:? "courseRosterChangesInfo"))++instance ToJSON Feed where+ toJSON Feed'{..}+ = object+ (catMaybes+ [("courseWorkChangesInfo" .=) <$>+ _fCourseWorkChangesInfo,+ ("feedType" .=) <$> _fFeedType,+ ("courseRosterChangesInfo" .=) <$>+ _fCourseRosterChangesInfo])++-- | Request to modify assignee mode and options of an announcement.+--+-- /See:/ 'modifyAnnouncementAssigneesRequest' smart constructor.+data ModifyAnnouncementAssigneesRequest = ModifyAnnouncementAssigneesRequest'+ { _maarAssigneeMode :: !(Maybe ModifyAnnouncementAssigneesRequestAssigneeMode)+ , _maarModifyIndividualStudentsOptions :: !(Maybe ModifyIndividualStudentsOptions)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyAnnouncementAssigneesRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'maarAssigneeMode'+--+-- * 'maarModifyIndividualStudentsOptions'+modifyAnnouncementAssigneesRequest+ :: ModifyAnnouncementAssigneesRequest+modifyAnnouncementAssigneesRequest =+ ModifyAnnouncementAssigneesRequest'+ { _maarAssigneeMode = Nothing+ , _maarModifyIndividualStudentsOptions = Nothing+ }++-- | Mode of the announcement describing whether it will be accessible by all+-- students or specified individual students.+maarAssigneeMode :: Lens' ModifyAnnouncementAssigneesRequest (Maybe ModifyAnnouncementAssigneesRequestAssigneeMode)+maarAssigneeMode+ = lens _maarAssigneeMode+ (\ s a -> s{_maarAssigneeMode = a})++-- | Set which students can view or cannot view the announcement. Must be+-- specified only when \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`.+maarModifyIndividualStudentsOptions :: Lens' ModifyAnnouncementAssigneesRequest (Maybe ModifyIndividualStudentsOptions)+maarModifyIndividualStudentsOptions+ = lens _maarModifyIndividualStudentsOptions+ (\ s a ->+ s{_maarModifyIndividualStudentsOptions = a})++instance FromJSON ModifyAnnouncementAssigneesRequest+ where+ parseJSON+ = withObject "ModifyAnnouncementAssigneesRequest"+ (\ o ->+ ModifyAnnouncementAssigneesRequest' <$>+ (o .:? "assigneeMode") <*>+ (o .:? "modifyIndividualStudentsOptions"))++instance ToJSON ModifyAnnouncementAssigneesRequest+ where+ toJSON ModifyAnnouncementAssigneesRequest'{..}+ = object+ (catMaybes+ [("assigneeMode" .=) <$> _maarAssigneeMode,+ ("modifyIndividualStudentsOptions" .=) <$>+ _maarModifyIndividualStudentsOptions])++-- | Request to return a student submission.+--+-- /See:/ 'returnStudentSubmissionRequest' smart constructor.+data ReturnStudentSubmissionRequest =+ ReturnStudentSubmissionRequest'+ deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReturnStudentSubmissionRequest' with the minimum fields required to make a request.+--+returnStudentSubmissionRequest+ :: ReturnStudentSubmissionRequest+returnStudentSubmissionRequest = ReturnStudentSubmissionRequest'++instance FromJSON ReturnStudentSubmissionRequest+ where+ parseJSON+ = withObject "ReturnStudentSubmissionRequest"+ (\ o -> pure ReturnStudentSubmissionRequest')++instance ToJSON ReturnStudentSubmissionRequest where+ toJSON = const emptyObject++-- | Request to reclaim a student submission.+--+-- /See:/ 'reclaimStudentSubmissionRequest' smart constructor.+data ReclaimStudentSubmissionRequest =+ ReclaimStudentSubmissionRequest'+ deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ReclaimStudentSubmissionRequest' with the minimum fields required to make a request.+--+reclaimStudentSubmissionRequest+ :: ReclaimStudentSubmissionRequest+reclaimStudentSubmissionRequest = ReclaimStudentSubmissionRequest'++instance FromJSON ReclaimStudentSubmissionRequest+ where+ parseJSON+ = withObject "ReclaimStudentSubmissionRequest"+ (\ o -> pure ReclaimStudentSubmissionRequest')++instance ToJSON ReclaimStudentSubmissionRequest where+ toJSON = const emptyObject++-- | Response when listing course work.+--+-- /See:/ 'listCourseWorkResponse' smart constructor.+data ListCourseWorkResponse = ListCourseWorkResponse'+ { _lcwrCourseWork :: !(Maybe [CourseWork])+ , _lcwrNextPageToken :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListCourseWorkResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lcwrCourseWork'+--+-- * 'lcwrNextPageToken'+listCourseWorkResponse+ :: ListCourseWorkResponse+listCourseWorkResponse =+ ListCourseWorkResponse'+ { _lcwrCourseWork = Nothing+ , _lcwrNextPageToken = Nothing+ }++-- | Course work items that match the request.+lcwrCourseWork :: Lens' ListCourseWorkResponse [CourseWork]+lcwrCourseWork+ = lens _lcwrCourseWork+ (\ s a -> s{_lcwrCourseWork = a})+ . _Default+ . _Coerce++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lcwrNextPageToken :: Lens' ListCourseWorkResponse (Maybe Text)+lcwrNextPageToken+ = lens _lcwrNextPageToken+ (\ s a -> s{_lcwrNextPageToken = a})++instance FromJSON ListCourseWorkResponse where+ parseJSON+ = withObject "ListCourseWorkResponse"+ (\ o ->+ ListCourseWorkResponse' <$>+ (o .:? "courseWork" .!= mempty) <*>+ (o .:? "nextPageToken"))++instance ToJSON ListCourseWorkResponse where+ toJSON ListCourseWorkResponse'{..}+ = object+ (catMaybes+ [("courseWork" .=) <$> _lcwrCourseWork,+ ("nextPageToken" .=) <$> _lcwrNextPageToken])++-- | A generic empty message that you can re-use to avoid defining duplicated+-- empty messages in your APIs. A typical example is to use it as the+-- request or the response type of an API method. For instance: service Foo+-- { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); } The+-- JSON representation for \`Empty\` is empty JSON object \`{}\`.+--+-- /See:/ 'empty' smart constructor.+data Empty =+ Empty'+ deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Empty' with the minimum fields required to make a request.+--+empty+ :: Empty+empty = Empty'++instance FromJSON Empty where+ parseJSON = withObject "Empty" (\ o -> pure Empty')++instance ToJSON Empty where+ toJSON = const emptyObject++-- | Global user permission description.+--+-- /See:/ 'globalPermission' smart constructor.+newtype GlobalPermission = GlobalPermission'+ { _gpPermission :: Maybe GlobalPermissionPermission+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'GlobalPermission' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gpPermission'+globalPermission+ :: GlobalPermission+globalPermission =+ GlobalPermission'+ { _gpPermission = Nothing+ }++-- | Permission value.+gpPermission :: Lens' GlobalPermission (Maybe GlobalPermissionPermission)+gpPermission+ = lens _gpPermission (\ s a -> s{_gpPermission = a})++instance FromJSON GlobalPermission where+ parseJSON+ = withObject "GlobalPermission"+ (\ o -> GlobalPermission' <$> (o .:? "permission"))++instance ToJSON GlobalPermission where+ toJSON GlobalPermission'{..}+ = object+ (catMaybes [("permission" .=) <$> _gpPermission])++-- | URL item.+--+-- /See:/ 'link' smart constructor.+data Link = Link'+ { _lThumbnailURL :: !(Maybe Text)+ , _lURL :: !(Maybe Text)+ , _lTitle :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Link' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lThumbnailURL'+--+-- * 'lURL'+--+-- * 'lTitle'+link+ :: Link+link =+ Link'+ { _lThumbnailURL = Nothing+ , _lURL = Nothing+ , _lTitle = Nothing+ }++-- | URL of a thumbnail image of the target URL. Read-only.+lThumbnailURL :: Lens' Link (Maybe Text)+lThumbnailURL+ = lens _lThumbnailURL+ (\ s a -> s{_lThumbnailURL = a})++-- | URL to link to. This must be a valid UTF-8 string containing between 1+-- and 2024 characters.+lURL :: Lens' Link (Maybe Text)+lURL = lens _lURL (\ s a -> s{_lURL = a})++-- | Title of the target of the URL. Read-only.+lTitle :: Lens' Link (Maybe Text)+lTitle = lens _lTitle (\ s a -> s{_lTitle = a})++instance FromJSON Link where+ parseJSON+ = withObject "Link"+ (\ o ->+ Link' <$>+ (o .:? "thumbnailUrl") <*> (o .:? "url") <*>+ (o .:? "title"))++instance ToJSON Link where+ toJSON Link'{..}+ = object+ (catMaybes+ [("thumbnailUrl" .=) <$> _lThumbnailURL,+ ("url" .=) <$> _lURL, ("title" .=) <$> _lTitle])++-- | Assignee details about a coursework\/announcement. This field is set if+-- and only if \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`.+--+-- /See:/ 'individualStudentsOptions' smart constructor.+newtype IndividualStudentsOptions = IndividualStudentsOptions'+ { _isoStudentIds :: Maybe [Text]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'IndividualStudentsOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'isoStudentIds'+individualStudentsOptions+ :: IndividualStudentsOptions+individualStudentsOptions =+ IndividualStudentsOptions'+ { _isoStudentIds = Nothing+ }++-- | Identifiers for the students that have access to the+-- coursework\/announcement.+isoStudentIds :: Lens' IndividualStudentsOptions [Text]+isoStudentIds+ = lens _isoStudentIds+ (\ s a -> s{_isoStudentIds = a})+ . _Default+ . _Coerce++instance FromJSON IndividualStudentsOptions where+ parseJSON+ = withObject "IndividualStudentsOptions"+ (\ o ->+ IndividualStudentsOptions' <$>+ (o .:? "studentIds" .!= mempty))++instance ToJSON IndividualStudentsOptions where+ toJSON IndividualStudentsOptions'{..}+ = object+ (catMaybes [("studentIds" .=) <$> _isoStudentIds])++-- | Student work for an assignment.+--+-- /See:/ 'assignmentSubmission' smart constructor.+newtype AssignmentSubmission = AssignmentSubmission'+ { _asAttachments :: Maybe [Attachment]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'AssignmentSubmission' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'asAttachments'+assignmentSubmission+ :: AssignmentSubmission+assignmentSubmission =+ AssignmentSubmission'+ { _asAttachments = Nothing+ }++-- | Attachments added by the student. Drive files that correspond to+-- materials with a share mode of STUDENT_COPY may not exist yet if the+-- student has not accessed the assignment in Classroom. Some attachment+-- metadata is only populated if the requesting user has permission to+-- access it. Identifier and alternate_link fields are always available,+-- but others (e.g. title) may not be.+asAttachments :: Lens' AssignmentSubmission [Attachment]+asAttachments+ = lens _asAttachments+ (\ s a -> s{_asAttachments = a})+ . _Default+ . _Coerce++instance FromJSON AssignmentSubmission where+ parseJSON+ = withObject "AssignmentSubmission"+ (\ o ->+ AssignmentSubmission' <$>+ (o .:? "attachments" .!= mempty))++instance ToJSON AssignmentSubmission where+ toJSON AssignmentSubmission'{..}+ = object+ (catMaybes [("attachments" .=) <$> _asAttachments])++-- | Request to modify the attachments of a student submission.+--+-- /See:/ 'modifyAttachmentsRequest' smart constructor.+newtype ModifyAttachmentsRequest = ModifyAttachmentsRequest'+ { _marAddAttachments :: Maybe [Attachment]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyAttachmentsRequest' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'marAddAttachments'+modifyAttachmentsRequest+ :: ModifyAttachmentsRequest+modifyAttachmentsRequest =+ ModifyAttachmentsRequest'+ { _marAddAttachments = Nothing+ }++-- | Attachments to add. A student submission may not have more than 20+-- attachments. Form attachments are not supported.+marAddAttachments :: Lens' ModifyAttachmentsRequest [Attachment]+marAddAttachments+ = lens _marAddAttachments+ (\ s a -> s{_marAddAttachments = a})+ . _Default+ . _Coerce++instance FromJSON ModifyAttachmentsRequest where+ parseJSON+ = withObject "ModifyAttachmentsRequest"+ (\ o ->+ ModifyAttachmentsRequest' <$>+ (o .:? "addAttachments" .!= mempty))++instance ToJSON ModifyAttachmentsRequest where+ toJSON ModifyAttachmentsRequest'{..}+ = object+ (catMaybes+ [("addAttachments" .=) <$> _marAddAttachments])++-- | Response when listing course work.+--+-- /See:/ 'listAnnouncementsResponse' smart constructor.+data ListAnnouncementsResponse = ListAnnouncementsResponse'+ { _larNextPageToken :: !(Maybe Text)+ , _larAnnouncements :: !(Maybe [Announcement])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListAnnouncementsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'larNextPageToken'+--+-- * 'larAnnouncements'+listAnnouncementsResponse+ :: ListAnnouncementsResponse+listAnnouncementsResponse =+ ListAnnouncementsResponse'+ { _larNextPageToken = Nothing+ , _larAnnouncements = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+larNextPageToken :: Lens' ListAnnouncementsResponse (Maybe Text)+larNextPageToken+ = lens _larNextPageToken+ (\ s a -> s{_larNextPageToken = a})++-- | Announcement items that match the request.+larAnnouncements :: Lens' ListAnnouncementsResponse [Announcement]+larAnnouncements+ = lens _larAnnouncements+ (\ s a -> s{_larAnnouncements = a})+ . _Default+ . _Coerce++instance FromJSON ListAnnouncementsResponse where+ parseJSON+ = withObject "ListAnnouncementsResponse"+ (\ o ->+ ListAnnouncementsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "announcements" .!= mempty))++instance ToJSON ListAnnouncementsResponse where+ toJSON ListAnnouncementsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _larNextPageToken,+ ("announcements" .=) <$> _larAnnouncements])++-- | Response when listing student submissions.+--+-- /See:/ 'listStudentSubmissionsResponse' smart constructor.+data ListStudentSubmissionsResponse = ListStudentSubmissionsResponse'+ { _lssrNextPageToken :: !(Maybe Text)+ , _lssrStudentSubmissions :: !(Maybe [StudentSubmission])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListStudentSubmissionsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lssrNextPageToken'+--+-- * 'lssrStudentSubmissions'+listStudentSubmissionsResponse+ :: ListStudentSubmissionsResponse+listStudentSubmissionsResponse =+ ListStudentSubmissionsResponse'+ { _lssrNextPageToken = Nothing+ , _lssrStudentSubmissions = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lssrNextPageToken :: Lens' ListStudentSubmissionsResponse (Maybe Text)+lssrNextPageToken+ = lens _lssrNextPageToken+ (\ s a -> s{_lssrNextPageToken = a})++-- | Student work that matches the request.+lssrStudentSubmissions :: Lens' ListStudentSubmissionsResponse [StudentSubmission]+lssrStudentSubmissions+ = lens _lssrStudentSubmissions+ (\ s a -> s{_lssrStudentSubmissions = a})+ . _Default+ . _Coerce++instance FromJSON ListStudentSubmissionsResponse+ where+ parseJSON+ = withObject "ListStudentSubmissionsResponse"+ (\ o ->+ ListStudentSubmissionsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "studentSubmissions" .!= mempty))++instance ToJSON ListStudentSubmissionsResponse where+ toJSON ListStudentSubmissionsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lssrNextPageToken,+ ("studentSubmissions" .=) <$>+ _lssrStudentSubmissions])++-- | Material attached to course work. When creating attachments, setting the+-- \`form\` field is not supported.+--+-- /See:/ 'material' smart constructor.+data Material = Material'+ { _mDriveFile :: !(Maybe SharedDriveFile)+ , _mLink :: !(Maybe Link)+ , _mYouTubeVideo :: !(Maybe YouTubeVideo)+ , _mForm :: !(Maybe Form)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Material' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mDriveFile'+--+-- * 'mLink'+--+-- * 'mYouTubeVideo'+--+-- * 'mForm'+material+ :: Material+material =+ Material'+ { _mDriveFile = Nothing+ , _mLink = Nothing+ , _mYouTubeVideo = Nothing+ , _mForm = Nothing+ }++-- | Google Drive file material.+mDriveFile :: Lens' Material (Maybe SharedDriveFile)+mDriveFile+ = lens _mDriveFile (\ s a -> s{_mDriveFile = a})++-- | Link material. On creation, will be upgraded to a more appropriate type+-- if possible, and this will be reflected in the response.+mLink :: Lens' Material (Maybe Link)+mLink = lens _mLink (\ s a -> s{_mLink = a})++-- | YouTube video material.+mYouTubeVideo :: Lens' Material (Maybe YouTubeVideo)+mYouTubeVideo+ = lens _mYouTubeVideo+ (\ s a -> s{_mYouTubeVideo = a})++-- | Google Forms material.+mForm :: Lens' Material (Maybe Form)+mForm = lens _mForm (\ s a -> s{_mForm = a})++instance FromJSON Material where+ parseJSON+ = withObject "Material"+ (\ o ->+ Material' <$>+ (o .:? "driveFile") <*> (o .:? "link") <*>+ (o .:? "youtubeVideo")+ <*> (o .:? "form"))++instance ToJSON Material where+ toJSON Material'{..}+ = object+ (catMaybes+ [("driveFile" .=) <$> _mDriveFile,+ ("link" .=) <$> _mLink,+ ("youtubeVideo" .=) <$> _mYouTubeVideo,+ ("form" .=) <$> _mForm])++-- | Student work for a multiple-choice question.+--+-- /See:/ 'multipleChoiceSubmission' smart constructor.+newtype MultipleChoiceSubmission = MultipleChoiceSubmission'+ { _mcsAnswer :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MultipleChoiceSubmission' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mcsAnswer'+multipleChoiceSubmission+ :: MultipleChoiceSubmission+multipleChoiceSubmission =+ MultipleChoiceSubmission'+ { _mcsAnswer = Nothing+ }++-- | Student\'s select choice.+mcsAnswer :: Lens' MultipleChoiceSubmission (Maybe Text)+mcsAnswer+ = lens _mcsAnswer (\ s a -> s{_mcsAnswer = a})++instance FromJSON MultipleChoiceSubmission where+ parseJSON+ = withObject "MultipleChoiceSubmission"+ (\ o ->+ MultipleChoiceSubmission' <$> (o .:? "answer"))++instance ToJSON MultipleChoiceSubmission where+ toJSON MultipleChoiceSubmission'{..}+ = object (catMaybes [("answer" .=) <$> _mcsAnswer])++-- | Response when listing invitations.+--+-- /See:/ 'listInvitationsResponse' smart constructor.+data ListInvitationsResponse = ListInvitationsResponse'+ { _lirNextPageToken :: !(Maybe Text)+ , _lirInvitations :: !(Maybe [Invitation])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListInvitationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lirNextPageToken'+--+-- * 'lirInvitations'+listInvitationsResponse+ :: ListInvitationsResponse+listInvitationsResponse =+ ListInvitationsResponse'+ { _lirNextPageToken = Nothing+ , _lirInvitations = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lirNextPageToken :: Lens' ListInvitationsResponse (Maybe Text)+lirNextPageToken+ = lens _lirNextPageToken+ (\ s a -> s{_lirNextPageToken = a})++-- | Invitations that match the list request.+lirInvitations :: Lens' ListInvitationsResponse [Invitation]+lirInvitations+ = lens _lirInvitations+ (\ s a -> s{_lirInvitations = a})+ . _Default+ . _Coerce++instance FromJSON ListInvitationsResponse where+ parseJSON+ = withObject "ListInvitationsResponse"+ (\ o ->+ ListInvitationsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "invitations" .!= mempty))++instance ToJSON ListInvitationsResponse where+ toJSON ListInvitationsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lirNextPageToken,+ ("invitations" .=) <$> _lirInvitations])++-- | Association between a student and a guardian of that student. The+-- guardian may receive information about the student\'s course work.+--+-- /See:/ 'guardian' smart constructor.+data Guardian = Guardian'+ { _gStudentId :: !(Maybe Text)+ , _gGuardianId :: !(Maybe Text)+ , _gInvitedEmailAddress :: !(Maybe Text)+ , _gGuardianProFile :: !(Maybe UserProFile)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Guardian' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'gStudentId'+--+-- * 'gGuardianId'+--+-- * 'gInvitedEmailAddress'+--+-- * 'gGuardianProFile'+guardian+ :: Guardian+guardian =+ Guardian'+ { _gStudentId = Nothing+ , _gGuardianId = Nothing+ , _gInvitedEmailAddress = Nothing+ , _gGuardianProFile = Nothing+ }++-- | Identifier for the student to whom the guardian relationship applies.+gStudentId :: Lens' Guardian (Maybe Text)+gStudentId+ = lens _gStudentId (\ s a -> s{_gStudentId = a})++-- | Identifier for the guardian.+gGuardianId :: Lens' Guardian (Maybe Text)+gGuardianId+ = lens _gGuardianId (\ s a -> s{_gGuardianId = a})++-- | The email address to which the initial guardian invitation was sent.+-- This field is only visible to domain administrators.+gInvitedEmailAddress :: Lens' Guardian (Maybe Text)+gInvitedEmailAddress+ = lens _gInvitedEmailAddress+ (\ s a -> s{_gInvitedEmailAddress = a})++-- | User profile for the guardian.+gGuardianProFile :: Lens' Guardian (Maybe UserProFile)+gGuardianProFile+ = lens _gGuardianProFile+ (\ s a -> s{_gGuardianProFile = a})++instance FromJSON Guardian where+ parseJSON+ = withObject "Guardian"+ (\ o ->+ Guardian' <$>+ (o .:? "studentId") <*> (o .:? "guardianId") <*>+ (o .:? "invitedEmailAddress")+ <*> (o .:? "guardianProfile"))++instance ToJSON Guardian where+ toJSON Guardian'{..}+ = object+ (catMaybes+ [("studentId" .=) <$> _gStudentId,+ ("guardianId" .=) <$> _gGuardianId,+ ("invitedEmailAddress" .=) <$> _gInvitedEmailAddress,+ ("guardianProfile" .=) <$> _gGuardianProFile])++-- | A material attached to a course as part of a material set.+--+-- /See:/ 'courseMaterial' smart constructor.+data CourseMaterial = CourseMaterial'+ { _cmDriveFile :: !(Maybe DriveFile)+ , _cmLink :: !(Maybe Link)+ , _cmYouTubeVideo :: !(Maybe YouTubeVideo)+ , _cmForm :: !(Maybe Form)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CourseMaterial' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cmDriveFile'+--+-- * 'cmLink'+--+-- * 'cmYouTubeVideo'+--+-- * 'cmForm'+courseMaterial+ :: CourseMaterial+courseMaterial =+ CourseMaterial'+ { _cmDriveFile = Nothing+ , _cmLink = Nothing+ , _cmYouTubeVideo = Nothing+ , _cmForm = Nothing+ }++-- | Google Drive file attachment.+cmDriveFile :: Lens' CourseMaterial (Maybe DriveFile)+cmDriveFile+ = lens _cmDriveFile (\ s a -> s{_cmDriveFile = a})++-- | Link atatchment.+cmLink :: Lens' CourseMaterial (Maybe Link)+cmLink = lens _cmLink (\ s a -> s{_cmLink = a})++-- | Youtube video attachment.+cmYouTubeVideo :: Lens' CourseMaterial (Maybe YouTubeVideo)+cmYouTubeVideo+ = lens _cmYouTubeVideo+ (\ s a -> s{_cmYouTubeVideo = a})++-- | Google Forms attachment.+cmForm :: Lens' CourseMaterial (Maybe Form)+cmForm = lens _cmForm (\ s a -> s{_cmForm = a})++instance FromJSON CourseMaterial where+ parseJSON+ = withObject "CourseMaterial"+ (\ o ->+ CourseMaterial' <$>+ (o .:? "driveFile") <*> (o .:? "link") <*>+ (o .:? "youTubeVideo")+ <*> (o .:? "form"))++instance ToJSON CourseMaterial where+ toJSON CourseMaterial'{..}+ = object+ (catMaybes+ [("driveFile" .=) <$> _cmDriveFile,+ ("link" .=) <$> _cmLink,+ ("youTubeVideo" .=) <$> _cmYouTubeVideo,+ ("form" .=) <$> _cmForm])++-- | Student work for a short answer question.+--+-- /See:/ 'shortAnswerSubmission' smart constructor.+newtype ShortAnswerSubmission = ShortAnswerSubmission'+ { _sasAnswer :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ShortAnswerSubmission' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sasAnswer'+shortAnswerSubmission+ :: ShortAnswerSubmission+shortAnswerSubmission =+ ShortAnswerSubmission'+ { _sasAnswer = Nothing+ }++-- | Student response to a short-answer question.+sasAnswer :: Lens' ShortAnswerSubmission (Maybe Text)+sasAnswer+ = lens _sasAnswer (\ s a -> s{_sasAnswer = a})++instance FromJSON ShortAnswerSubmission where+ parseJSON+ = withObject "ShortAnswerSubmission"+ (\ o -> ShortAnswerSubmission' <$> (o .:? "answer"))++instance ToJSON ShortAnswerSubmission where+ toJSON ShortAnswerSubmission'{..}+ = object (catMaybes [("answer" .=) <$> _sasAnswer])++-- | An invitation to join a course.+--+-- /See:/ 'invitation' smart constructor.+data Invitation = Invitation'+ { _iCourseId :: !(Maybe Text)+ , _iUserId :: !(Maybe Text)+ , _iRole :: !(Maybe InvitationRole)+ , _iId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Invitation' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'iCourseId'+--+-- * 'iUserId'+--+-- * 'iRole'+--+-- * 'iId'+invitation+ :: Invitation+invitation =+ Invitation'+ { _iCourseId = Nothing+ , _iUserId = Nothing+ , _iRole = Nothing+ , _iId = Nothing+ }++-- | Identifier of the course to invite the user to.+iCourseId :: Lens' Invitation (Maybe Text)+iCourseId+ = lens _iCourseId (\ s a -> s{_iCourseId = a})++-- | Identifier of the invited user. When specified as a parameter of a+-- request, this identifier can be set to one of the following: * the+-- numeric identifier for the user * the email address of the user * the+-- string literal \`\"me\"\`, indicating the requesting user+iUserId :: Lens' Invitation (Maybe Text)+iUserId = lens _iUserId (\ s a -> s{_iUserId = a})++-- | Role to invite the user to have. Must not be+-- \`COURSE_ROLE_UNSPECIFIED\`.+iRole :: Lens' Invitation (Maybe InvitationRole)+iRole = lens _iRole (\ s a -> s{_iRole = a})++-- | Identifier assigned by Classroom. Read-only.+iId :: Lens' Invitation (Maybe Text)+iId = lens _iId (\ s a -> s{_iId = a})++instance FromJSON Invitation where+ parseJSON+ = withObject "Invitation"+ (\ o ->+ Invitation' <$>+ (o .:? "courseId") <*> (o .:? "userId") <*>+ (o .:? "role")+ <*> (o .:? "id"))++instance ToJSON Invitation where+ toJSON Invitation'{..}+ = object+ (catMaybes+ [("courseId" .=) <$> _iCourseId,+ ("userId" .=) <$> _iUserId, ("role" .=) <$> _iRole,+ ("id" .=) <$> _iId])++-- | Attachment added to student assignment work. When creating attachments,+-- setting the \`form\` field is not supported.+--+-- /See:/ 'attachment' smart constructor.+data Attachment = Attachment'+ { _aDriveFile :: !(Maybe DriveFile)+ , _aLink :: !(Maybe Link)+ , _aYouTubeVideo :: !(Maybe YouTubeVideo)+ , _aForm :: !(Maybe Form)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Attachment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aDriveFile'+--+-- * 'aLink'+--+-- * 'aYouTubeVideo'+--+-- * 'aForm'+attachment+ :: Attachment+attachment =+ Attachment'+ { _aDriveFile = Nothing+ , _aLink = Nothing+ , _aYouTubeVideo = Nothing+ , _aForm = Nothing+ }++-- | Google Drive file attachment.+aDriveFile :: Lens' Attachment (Maybe DriveFile)+aDriveFile+ = lens _aDriveFile (\ s a -> s{_aDriveFile = a})++-- | Link attachment.+aLink :: Lens' Attachment (Maybe Link)+aLink = lens _aLink (\ s a -> s{_aLink = a})++-- | Youtube video attachment.+aYouTubeVideo :: Lens' Attachment (Maybe YouTubeVideo)+aYouTubeVideo+ = lens _aYouTubeVideo+ (\ s a -> s{_aYouTubeVideo = a})++-- | Google Forms attachment.+aForm :: Lens' Attachment (Maybe Form)+aForm = lens _aForm (\ s a -> s{_aForm = a})++instance FromJSON Attachment where+ parseJSON+ = withObject "Attachment"+ (\ o ->+ Attachment' <$>+ (o .:? "driveFile") <*> (o .:? "link") <*>+ (o .:? "youTubeVideo")+ <*> (o .:? "form"))++instance ToJSON Attachment where+ toJSON Attachment'{..}+ = object+ (catMaybes+ [("driveFile" .=) <$> _aDriveFile,+ ("link" .=) <$> _aLink,+ ("youTubeVideo" .=) <$> _aYouTubeVideo,+ ("form" .=) <$> _aForm])++-- | Announcement created by a teacher for students of the course+--+-- /See:/ 'announcement' smart constructor.+data Announcement = Announcement'+ { _aCreationTime :: !(Maybe DateTime')+ , _aScheduledTime :: !(Maybe DateTime')+ , _aState :: !(Maybe AnnouncementState)+ , _aAssigneeMode :: !(Maybe AnnouncementAssigneeMode)+ , _aText :: !(Maybe Text)+ , _aMaterials :: !(Maybe [Material])+ , _aCourseId :: !(Maybe Text)+ , _aIndividualStudentsOptions :: !(Maybe IndividualStudentsOptions)+ , _aUpdateTime :: !(Maybe DateTime')+ , _aId :: !(Maybe Text)+ , _aCreatorUserId :: !(Maybe Text)+ , _aAlternateLink :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Announcement' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aCreationTime'+--+-- * 'aScheduledTime'+--+-- * 'aState'+--+-- * 'aAssigneeMode'+--+-- * 'aText'+--+-- * 'aMaterials'+--+-- * 'aCourseId'+--+-- * 'aIndividualStudentsOptions'+--+-- * 'aUpdateTime'+--+-- * 'aId'+--+-- * 'aCreatorUserId'+--+-- * 'aAlternateLink'+announcement+ :: Announcement+announcement =+ Announcement'+ { _aCreationTime = Nothing+ , _aScheduledTime = Nothing+ , _aState = Nothing+ , _aAssigneeMode = Nothing+ , _aText = Nothing+ , _aMaterials = Nothing+ , _aCourseId = Nothing+ , _aIndividualStudentsOptions = Nothing+ , _aUpdateTime = Nothing+ , _aId = Nothing+ , _aCreatorUserId = Nothing+ , _aAlternateLink = Nothing+ }++-- | Timestamp when this announcement was created. Read-only.+aCreationTime :: Lens' Announcement (Maybe UTCTime)+aCreationTime+ = lens _aCreationTime+ (\ s a -> s{_aCreationTime = a})+ . mapping _DateTime++-- | Optional timestamp when this announcement is scheduled to be published.+aScheduledTime :: Lens' Announcement (Maybe UTCTime)+aScheduledTime+ = lens _aScheduledTime+ (\ s a -> s{_aScheduledTime = a})+ . mapping _DateTime++-- | Status of this announcement. If unspecified, the default state is+-- \`DRAFT\`.+aState :: Lens' Announcement (Maybe AnnouncementState)+aState = lens _aState (\ s a -> s{_aState = a})++-- | Assignee mode of the announcement. If unspecified, the default value is+-- \`ALL_STUDENTS\`.+aAssigneeMode :: Lens' Announcement (Maybe AnnouncementAssigneeMode)+aAssigneeMode+ = lens _aAssigneeMode+ (\ s a -> s{_aAssigneeMode = a})++-- | Description of this announcement. The text must be a valid UTF-8 string+-- containing no more than 30,000 characters.+aText :: Lens' Announcement (Maybe Text)+aText = lens _aText (\ s a -> s{_aText = a})++-- | Additional materials. Announcements must have no more than 20 material+-- items.+aMaterials :: Lens' Announcement [Material]+aMaterials+ = lens _aMaterials (\ s a -> s{_aMaterials = a}) .+ _Default+ . _Coerce++-- | Identifier of the course. Read-only.+aCourseId :: Lens' Announcement (Maybe Text)+aCourseId+ = lens _aCourseId (\ s a -> s{_aCourseId = a})++-- | Identifiers of students with access to the announcement. This field is+-- set only if \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`. If the+-- \`assigneeMode\` is \`INDIVIDUAL_STUDENTS\`, then only students+-- specified in this field will be able to see the announcement.+aIndividualStudentsOptions :: Lens' Announcement (Maybe IndividualStudentsOptions)+aIndividualStudentsOptions+ = lens _aIndividualStudentsOptions+ (\ s a -> s{_aIndividualStudentsOptions = a})++-- | Timestamp of the most recent change to this announcement. Read-only.+aUpdateTime :: Lens' Announcement (Maybe UTCTime)+aUpdateTime+ = lens _aUpdateTime (\ s a -> s{_aUpdateTime = a}) .+ mapping _DateTime++-- | Classroom-assigned identifier of this announcement, unique per course.+-- Read-only.+aId :: Lens' Announcement (Maybe Text)+aId = lens _aId (\ s a -> s{_aId = a})++-- | Identifier for the user that created the announcement. Read-only.+aCreatorUserId :: Lens' Announcement (Maybe Text)+aCreatorUserId+ = lens _aCreatorUserId+ (\ s a -> s{_aCreatorUserId = a})++-- | Absolute link to this announcement in the Classroom web UI. This is only+-- populated if \`state\` is \`PUBLISHED\`. Read-only.+aAlternateLink :: Lens' Announcement (Maybe Text)+aAlternateLink+ = lens _aAlternateLink+ (\ s a -> s{_aAlternateLink = a})++instance FromJSON Announcement where+ parseJSON+ = withObject "Announcement"+ (\ o ->+ Announcement' <$>+ (o .:? "creationTime") <*> (o .:? "scheduledTime")+ <*> (o .:? "state")+ <*> (o .:? "assigneeMode")+ <*> (o .:? "text")+ <*> (o .:? "materials" .!= mempty)+ <*> (o .:? "courseId")+ <*> (o .:? "individualStudentsOptions")+ <*> (o .:? "updateTime")+ <*> (o .:? "id")+ <*> (o .:? "creatorUserId")+ <*> (o .:? "alternateLink"))++instance ToJSON Announcement where+ toJSON Announcement'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _aCreationTime,+ ("scheduledTime" .=) <$> _aScheduledTime,+ ("state" .=) <$> _aState,+ ("assigneeMode" .=) <$> _aAssigneeMode,+ ("text" .=) <$> _aText,+ ("materials" .=) <$> _aMaterials,+ ("courseId" .=) <$> _aCourseId,+ ("individualStudentsOptions" .=) <$>+ _aIndividualStudentsOptions,+ ("updateTime" .=) <$> _aUpdateTime,+ ("id" .=) <$> _aId,+ ("creatorUserId" .=) <$> _aCreatorUserId,+ ("alternateLink" .=) <$> _aAlternateLink])++-- | Student submission for course work. StudentSubmission items are+-- generated when a CourseWork item is created. StudentSubmissions that+-- have never been accessed (i.e. with \`state\` = NEW) may not have a+-- creation time or update time.+--+-- /See:/ 'studentSubmission' smart constructor.+data StudentSubmission = StudentSubmission'+ { _ssCreationTime :: !(Maybe DateTime')+ , _ssLate :: !(Maybe Bool)+ , _ssState :: !(Maybe StudentSubmissionState)+ , _ssCourseId :: !(Maybe Text)+ , _ssMultipleChoiceSubmission :: !(Maybe MultipleChoiceSubmission)+ , _ssAssignmentSubmission :: !(Maybe AssignmentSubmission)+ , _ssShortAnswerSubmission :: !(Maybe ShortAnswerSubmission)+ , _ssAssociatedWithDeveloper :: !(Maybe Bool)+ , _ssUserId :: !(Maybe Text)+ , _ssUpdateTime :: !(Maybe DateTime')+ , _ssCourseWorkType :: !(Maybe StudentSubmissionCourseWorkType)+ , _ssSubmissionHistory :: !(Maybe [SubmissionHistory])+ , _ssAssignedGrade :: !(Maybe (Textual Double))+ , _ssId :: !(Maybe Text)+ , _ssDraftGrade :: !(Maybe (Textual Double))+ , _ssAlternateLink :: !(Maybe Text)+ , _ssCourseWorkId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StudentSubmission' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ssCreationTime'+--+-- * 'ssLate'+--+-- * 'ssState'+--+-- * 'ssCourseId'+--+-- * 'ssMultipleChoiceSubmission'+--+-- * 'ssAssignmentSubmission'+--+-- * 'ssShortAnswerSubmission'+--+-- * 'ssAssociatedWithDeveloper'+--+-- * 'ssUserId'+--+-- * 'ssUpdateTime'+--+-- * 'ssCourseWorkType'+--+-- * 'ssSubmissionHistory'+--+-- * 'ssAssignedGrade'+--+-- * 'ssId'+--+-- * 'ssDraftGrade'+--+-- * 'ssAlternateLink'+--+-- * 'ssCourseWorkId'+studentSubmission+ :: StudentSubmission+studentSubmission =+ StudentSubmission'+ { _ssCreationTime = Nothing+ , _ssLate = Nothing+ , _ssState = Nothing+ , _ssCourseId = Nothing+ , _ssMultipleChoiceSubmission = Nothing+ , _ssAssignmentSubmission = Nothing+ , _ssShortAnswerSubmission = Nothing+ , _ssAssociatedWithDeveloper = Nothing+ , _ssUserId = Nothing+ , _ssUpdateTime = Nothing+ , _ssCourseWorkType = Nothing+ , _ssSubmissionHistory = Nothing+ , _ssAssignedGrade = Nothing+ , _ssId = Nothing+ , _ssDraftGrade = Nothing+ , _ssAlternateLink = Nothing+ , _ssCourseWorkId = Nothing+ }++-- | Creation time of this submission. This may be unset if the student has+-- not accessed this item. Read-only.+ssCreationTime :: Lens' StudentSubmission (Maybe UTCTime)+ssCreationTime+ = lens _ssCreationTime+ (\ s a -> s{_ssCreationTime = a})+ . mapping _DateTime++-- | Whether this submission is late. Read-only.+ssLate :: Lens' StudentSubmission (Maybe Bool)+ssLate = lens _ssLate (\ s a -> s{_ssLate = a})++-- | State of this submission. Read-only.+ssState :: Lens' StudentSubmission (Maybe StudentSubmissionState)+ssState = lens _ssState (\ s a -> s{_ssState = a})++-- | Identifier of the course. Read-only.+ssCourseId :: Lens' StudentSubmission (Maybe Text)+ssCourseId+ = lens _ssCourseId (\ s a -> s{_ssCourseId = a})++-- | Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION.+ssMultipleChoiceSubmission :: Lens' StudentSubmission (Maybe MultipleChoiceSubmission)+ssMultipleChoiceSubmission+ = lens _ssMultipleChoiceSubmission+ (\ s a -> s{_ssMultipleChoiceSubmission = a})++-- | Submission content when course_work_type is ASSIGNMENT. Students can+-- modify this content using google.classroom.Work.ModifyAttachments.+ssAssignmentSubmission :: Lens' StudentSubmission (Maybe AssignmentSubmission)+ssAssignmentSubmission+ = lens _ssAssignmentSubmission+ (\ s a -> s{_ssAssignmentSubmission = a})++-- | Submission content when course_work_type is SHORT_ANSWER_QUESTION.+ssShortAnswerSubmission :: Lens' StudentSubmission (Maybe ShortAnswerSubmission)+ssShortAnswerSubmission+ = lens _ssShortAnswerSubmission+ (\ s a -> s{_ssShortAnswerSubmission = a})++-- | Whether this student submission is associated with the Developer Console+-- project making the request. See google.classroom.Work.CreateCourseWork+-- for more details. Read-only.+ssAssociatedWithDeveloper :: Lens' StudentSubmission (Maybe Bool)+ssAssociatedWithDeveloper+ = lens _ssAssociatedWithDeveloper+ (\ s a -> s{_ssAssociatedWithDeveloper = a})++-- | Identifier for the student that owns this submission. Read-only.+ssUserId :: Lens' StudentSubmission (Maybe Text)+ssUserId = lens _ssUserId (\ s a -> s{_ssUserId = a})++-- | Last update time of this submission. This may be unset if the student+-- has not accessed this item. Read-only.+ssUpdateTime :: Lens' StudentSubmission (Maybe UTCTime)+ssUpdateTime+ = lens _ssUpdateTime (\ s a -> s{_ssUpdateTime = a})+ . mapping _DateTime++-- | Type of course work this submission is for. Read-only.+ssCourseWorkType :: Lens' StudentSubmission (Maybe StudentSubmissionCourseWorkType)+ssCourseWorkType+ = lens _ssCourseWorkType+ (\ s a -> s{_ssCourseWorkType = a})++-- | The history of the submission (includes state and grade histories).+-- Read-only.+ssSubmissionHistory :: Lens' StudentSubmission [SubmissionHistory]+ssSubmissionHistory+ = lens _ssSubmissionHistory+ (\ s a -> s{_ssSubmissionHistory = a})+ . _Default+ . _Coerce++-- | Optional grade. If unset, no grade was set. This value must be+-- non-negative. Decimal (i.e. non-integer) values are allowed, but will be+-- rounded to two decimal places. This may be modified only by course+-- teachers.+ssAssignedGrade :: Lens' StudentSubmission (Maybe Double)+ssAssignedGrade+ = lens _ssAssignedGrade+ (\ s a -> s{_ssAssignedGrade = a})+ . mapping _Coerce++-- | Classroom-assigned Identifier for the student submission. This is unique+-- among submissions for the relevant course work. Read-only.+ssId :: Lens' StudentSubmission (Maybe Text)+ssId = lens _ssId (\ s a -> s{_ssId = a})++-- | Optional pending grade. If unset, no grade was set. This value must be+-- non-negative. Decimal (i.e. non-integer) values are allowed, but will be+-- rounded to two decimal places. This is only visible to and modifiable by+-- course teachers.+ssDraftGrade :: Lens' StudentSubmission (Maybe Double)+ssDraftGrade+ = lens _ssDraftGrade (\ s a -> s{_ssDraftGrade = a})+ . mapping _Coerce++-- | Absolute link to the submission in the Classroom web UI. Read-only.+ssAlternateLink :: Lens' StudentSubmission (Maybe Text)+ssAlternateLink+ = lens _ssAlternateLink+ (\ s a -> s{_ssAlternateLink = a})++-- | Identifier for the course work this corresponds to. Read-only.+ssCourseWorkId :: Lens' StudentSubmission (Maybe Text)+ssCourseWorkId+ = lens _ssCourseWorkId+ (\ s a -> s{_ssCourseWorkId = a})++instance FromJSON StudentSubmission where+ parseJSON+ = withObject "StudentSubmission"+ (\ o ->+ StudentSubmission' <$>+ (o .:? "creationTime") <*> (o .:? "late") <*>+ (o .:? "state")+ <*> (o .:? "courseId")+ <*> (o .:? "multipleChoiceSubmission")+ <*> (o .:? "assignmentSubmission")+ <*> (o .:? "shortAnswerSubmission")+ <*> (o .:? "associatedWithDeveloper")+ <*> (o .:? "userId")+ <*> (o .:? "updateTime")+ <*> (o .:? "courseWorkType")+ <*> (o .:? "submissionHistory" .!= mempty)+ <*> (o .:? "assignedGrade")+ <*> (o .:? "id")+ <*> (o .:? "draftGrade")+ <*> (o .:? "alternateLink")+ <*> (o .:? "courseWorkId"))++instance ToJSON StudentSubmission where+ toJSON StudentSubmission'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _ssCreationTime,+ ("late" .=) <$> _ssLate, ("state" .=) <$> _ssState,+ ("courseId" .=) <$> _ssCourseId,+ ("multipleChoiceSubmission" .=) <$>+ _ssMultipleChoiceSubmission,+ ("assignmentSubmission" .=) <$>+ _ssAssignmentSubmission,+ ("shortAnswerSubmission" .=) <$>+ _ssShortAnswerSubmission,+ ("associatedWithDeveloper" .=) <$>+ _ssAssociatedWithDeveloper,+ ("userId" .=) <$> _ssUserId,+ ("updateTime" .=) <$> _ssUpdateTime,+ ("courseWorkType" .=) <$> _ssCourseWorkType,+ ("submissionHistory" .=) <$> _ssSubmissionHistory,+ ("assignedGrade" .=) <$> _ssAssignedGrade,+ ("id" .=) <$> _ssId,+ ("draftGrade" .=) <$> _ssDraftGrade,+ ("alternateLink" .=) <$> _ssAlternateLink,+ ("courseWorkId" .=) <$> _ssCourseWorkId])++-- | Response when listing guardians.+--+-- /See:/ 'listGuardiansResponse' smart constructor.+data ListGuardiansResponse = ListGuardiansResponse'+ { _lgrNextPageToken :: !(Maybe Text)+ , _lgrGuardians :: !(Maybe [Guardian])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListGuardiansResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lgrNextPageToken'+--+-- * 'lgrGuardians'+listGuardiansResponse+ :: ListGuardiansResponse+listGuardiansResponse =+ ListGuardiansResponse'+ { _lgrNextPageToken = Nothing+ , _lgrGuardians = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lgrNextPageToken :: Lens' ListGuardiansResponse (Maybe Text)+lgrNextPageToken+ = lens _lgrNextPageToken+ (\ s a -> s{_lgrNextPageToken = a})++-- | Guardians on this page of results that met the criteria specified in the+-- request.+lgrGuardians :: Lens' ListGuardiansResponse [Guardian]+lgrGuardians+ = lens _lgrGuardians (\ s a -> s{_lgrGuardians = a})+ . _Default+ . _Coerce++instance FromJSON ListGuardiansResponse where+ parseJSON+ = withObject "ListGuardiansResponse"+ (\ o ->+ ListGuardiansResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "guardians" .!= mempty))++instance ToJSON ListGuardiansResponse where+ toJSON ListGuardiansResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lgrNextPageToken,+ ("guardians" .=) <$> _lgrGuardians])++-- | Represents a whole or partial calendar date, e.g. a birthday. The time+-- of day and time zone are either specified elsewhere or are not+-- significant. The date is relative to the Proleptic Gregorian Calendar.+-- This can represent: * A full date, with non-zero year, month and day+-- values * A month and day value, with a zero year, e.g. an anniversary *+-- A year on its own, with zero month and day values * A year and month+-- value, with a zero day, e.g. a credit card expiration date Related types+-- are google.type.TimeOfDay and \`google.protobuf.Timestamp\`.+--+-- /See:/ 'date' smart constructor.+data Date = Date'+ { _dDay :: !(Maybe (Textual Int32))+ , _dYear :: !(Maybe (Textual Int32))+ , _dMonth :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Date' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dDay'+--+-- * 'dYear'+--+-- * 'dMonth'+date+ :: Date+date =+ Date'+ { _dDay = Nothing+ , _dYear = Nothing+ , _dMonth = Nothing+ }++-- | Day of month. Must be from 1 to 31 and valid for the year and month, or+-- 0 if specifying a year by itself or a year and month where the day is+-- not significant.+dDay :: Lens' Date (Maybe Int32)+dDay+ = lens _dDay (\ s a -> s{_dDay = a}) .+ mapping _Coerce++-- | Year of date. Must be from 1 to 9999, or 0 if specifying a date without+-- a year.+dYear :: Lens' Date (Maybe Int32)+dYear+ = lens _dYear (\ s a -> s{_dYear = a}) .+ mapping _Coerce++-- | Month of year. Must be from 1 to 12, or 0 if specifying a year without a+-- month and day.+dMonth :: Lens' Date (Maybe Int32)+dMonth+ = lens _dMonth (\ s a -> s{_dMonth = a}) .+ mapping _Coerce++instance FromJSON Date where+ parseJSON+ = withObject "Date"+ (\ o ->+ Date' <$>+ (o .:? "day") <*> (o .:? "year") <*> (o .:? "month"))++instance ToJSON Date where+ toJSON Date'{..}+ = object+ (catMaybes+ [("day" .=) <$> _dDay, ("year" .=) <$> _dYear,+ ("month" .=) <$> _dMonth])++-- | YouTube video item.+--+-- /See:/ 'youTubeVideo' smart constructor.+data YouTubeVideo = YouTubeVideo'+ { _ytvThumbnailURL :: !(Maybe Text)+ , _ytvId :: !(Maybe Text)+ , _ytvTitle :: !(Maybe Text)+ , _ytvAlternateLink :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'YouTubeVideo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ytvThumbnailURL'+--+-- * 'ytvId'+--+-- * 'ytvTitle'+--+-- * 'ytvAlternateLink'+youTubeVideo+ :: YouTubeVideo+youTubeVideo =+ YouTubeVideo'+ { _ytvThumbnailURL = Nothing+ , _ytvId = Nothing+ , _ytvTitle = Nothing+ , _ytvAlternateLink = Nothing+ }++-- | URL of a thumbnail image of the YouTube video. Read-only.+ytvThumbnailURL :: Lens' YouTubeVideo (Maybe Text)+ytvThumbnailURL+ = lens _ytvThumbnailURL+ (\ s a -> s{_ytvThumbnailURL = a})++-- | YouTube API resource ID.+ytvId :: Lens' YouTubeVideo (Maybe Text)+ytvId = lens _ytvId (\ s a -> s{_ytvId = a})++-- | Title of the YouTube video. Read-only.+ytvTitle :: Lens' YouTubeVideo (Maybe Text)+ytvTitle = lens _ytvTitle (\ s a -> s{_ytvTitle = a})++-- | URL that can be used to view the YouTube video. Read-only.+ytvAlternateLink :: Lens' YouTubeVideo (Maybe Text)+ytvAlternateLink+ = lens _ytvAlternateLink+ (\ s a -> s{_ytvAlternateLink = a})++instance FromJSON YouTubeVideo where+ parseJSON+ = withObject "YouTubeVideo"+ (\ o ->+ YouTubeVideo' <$>+ (o .:? "thumbnailUrl") <*> (o .:? "id") <*>+ (o .:? "title")+ <*> (o .:? "alternateLink"))++instance ToJSON YouTubeVideo where+ toJSON YouTubeVideo'{..}+ = object+ (catMaybes+ [("thumbnailUrl" .=) <$> _ytvThumbnailURL,+ ("id" .=) <$> _ytvId, ("title" .=) <$> _ytvTitle,+ ("alternateLink" .=) <$> _ytvAlternateLink])++-- | Teacher of a course.+--+-- /See:/ 'teacher' smart constructor.+data Teacher = Teacher'+ { _tCourseId :: !(Maybe Text)+ , _tProFile :: !(Maybe UserProFile)+ , _tUserId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Teacher' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'tCourseId'+--+-- * 'tProFile'+--+-- * 'tUserId'+teacher+ :: Teacher+teacher =+ Teacher'+ { _tCourseId = Nothing+ , _tProFile = Nothing+ , _tUserId = Nothing+ }++-- | Identifier of the course. Read-only.+tCourseId :: Lens' Teacher (Maybe Text)+tCourseId+ = lens _tCourseId (\ s a -> s{_tCourseId = a})++-- | Global user information for the teacher. Read-only.+tProFile :: Lens' Teacher (Maybe UserProFile)+tProFile = lens _tProFile (\ s a -> s{_tProFile = a})++-- | Identifier of the user. When specified as a parameter of a request, this+-- identifier can be one of the following: * the numeric identifier for the+-- user * the email address of the user * the string literal \`\"me\"\`,+-- indicating the requesting user+tUserId :: Lens' Teacher (Maybe Text)+tUserId = lens _tUserId (\ s a -> s{_tUserId = a})++instance FromJSON Teacher where+ parseJSON+ = withObject "Teacher"+ (\ o ->+ Teacher' <$>+ (o .:? "courseId") <*> (o .:? "profile") <*>+ (o .:? "userId"))++instance ToJSON Teacher where+ toJSON Teacher'{..}+ = object+ (catMaybes+ [("courseId" .=) <$> _tCourseId,+ ("profile" .=) <$> _tProFile,+ ("userId" .=) <$> _tUserId])++-- | A set of materials that appears on the \"About\" page of the course.+-- These materials might include a syllabus, schedule, or other background+-- information relating to the course as a whole.+--+-- /See:/ 'courseMaterialSet' smart constructor.+data CourseMaterialSet = CourseMaterialSet'+ { _cmsMaterials :: !(Maybe [CourseMaterial])+ , _cmsTitle :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CourseMaterialSet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cmsMaterials'+--+-- * 'cmsTitle'+courseMaterialSet+ :: CourseMaterialSet+courseMaterialSet =+ CourseMaterialSet'+ { _cmsMaterials = Nothing+ , _cmsTitle = Nothing+ }++-- | Materials attached to this set.+cmsMaterials :: Lens' CourseMaterialSet [CourseMaterial]+cmsMaterials+ = lens _cmsMaterials (\ s a -> s{_cmsMaterials = a})+ . _Default+ . _Coerce++-- | Title for this set.+cmsTitle :: Lens' CourseMaterialSet (Maybe Text)+cmsTitle = lens _cmsTitle (\ s a -> s{_cmsTitle = a})++instance FromJSON CourseMaterialSet where+ parseJSON+ = withObject "CourseMaterialSet"+ (\ o ->+ CourseMaterialSet' <$>+ (o .:? "materials" .!= mempty) <*> (o .:? "title"))++instance ToJSON CourseMaterialSet where+ toJSON CourseMaterialSet'{..}+ = object+ (catMaybes+ [("materials" .=) <$> _cmsMaterials,+ ("title" .=) <$> _cmsTitle])++-- | Details of the user\'s name.+--+-- /See:/ 'name' smart constructor.+data Name = Name'+ { _nGivenName :: !(Maybe Text)+ , _nFullName :: !(Maybe Text)+ , _nFamilyName :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Name' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'nGivenName'+--+-- * 'nFullName'+--+-- * 'nFamilyName'+name+ :: Name+name =+ Name'+ { _nGivenName = Nothing+ , _nFullName = Nothing+ , _nFamilyName = Nothing+ }++-- | The user\'s first name. Read-only.+nGivenName :: Lens' Name (Maybe Text)+nGivenName+ = lens _nGivenName (\ s a -> s{_nGivenName = a})++-- | The user\'s full name formed by concatenating the first and last name+-- values. Read-only.+nFullName :: Lens' Name (Maybe Text)+nFullName+ = lens _nFullName (\ s a -> s{_nFullName = a})++-- | The user\'s last name. Read-only.+nFamilyName :: Lens' Name (Maybe Text)+nFamilyName+ = lens _nFamilyName (\ s a -> s{_nFamilyName = a})++instance FromJSON Name where+ parseJSON+ = withObject "Name"+ (\ o ->+ Name' <$>+ (o .:? "givenName") <*> (o .:? "fullName") <*>+ (o .:? "familyName"))++instance ToJSON Name where+ toJSON Name'{..}+ = object+ (catMaybes+ [("givenName" .=) <$> _nGivenName,+ ("fullName" .=) <$> _nFullName,+ ("familyName" .=) <$> _nFamilyName])++-- | Response when listing courses.+--+-- /See:/ 'listCoursesResponse' smart constructor.+data ListCoursesResponse = ListCoursesResponse'+ { _lcrNextPageToken :: !(Maybe Text)+ , _lcrCourses :: !(Maybe [Course])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListCoursesResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lcrNextPageToken'+--+-- * 'lcrCourses'+listCoursesResponse+ :: ListCoursesResponse+listCoursesResponse =+ ListCoursesResponse'+ { _lcrNextPageToken = Nothing+ , _lcrCourses = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lcrNextPageToken :: Lens' ListCoursesResponse (Maybe Text)+lcrNextPageToken+ = lens _lcrNextPageToken+ (\ s a -> s{_lcrNextPageToken = a})++-- | Courses that match the list request.+lcrCourses :: Lens' ListCoursesResponse [Course]+lcrCourses+ = lens _lcrCourses (\ s a -> s{_lcrCourses = a}) .+ _Default+ . _Coerce++instance FromJSON ListCoursesResponse where+ parseJSON+ = withObject "ListCoursesResponse"+ (\ o ->+ ListCoursesResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "courses" .!= mempty))++instance ToJSON ListCoursesResponse where+ toJSON ListCoursesResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lcrNextPageToken,+ ("courses" .=) <$> _lcrCourses])++-- | Request to turn in a student submission.+--+-- /See:/ 'turnInStudentSubmissionRequest' smart constructor.+data TurnInStudentSubmissionRequest =+ TurnInStudentSubmissionRequest'+ deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TurnInStudentSubmissionRequest' with the minimum fields required to make a request.+--+turnInStudentSubmissionRequest+ :: TurnInStudentSubmissionRequest+turnInStudentSubmissionRequest = TurnInStudentSubmissionRequest'++instance FromJSON TurnInStudentSubmissionRequest+ where+ parseJSON+ = withObject "TurnInStudentSubmissionRequest"+ (\ o -> pure TurnInStudentSubmissionRequest')++instance ToJSON TurnInStudentSubmissionRequest where+ toJSON = const emptyObject++-- | Global information for a user.+--+-- /See:/ 'userProFile' smart constructor.+data UserProFile = UserProFile'+ { _upfPhotoURL :: !(Maybe Text)+ , _upfVerifiedTeacher :: !(Maybe Bool)+ , _upfName :: !(Maybe Name)+ , _upfEmailAddress :: !(Maybe Text)+ , _upfId :: !(Maybe Text)+ , _upfPermissions :: !(Maybe [GlobalPermission])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'UserProFile' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'upfPhotoURL'+--+-- * 'upfVerifiedTeacher'+--+-- * 'upfName'+--+-- * 'upfEmailAddress'+--+-- * 'upfId'+--+-- * 'upfPermissions'+userProFile+ :: UserProFile+userProFile =+ UserProFile'+ { _upfPhotoURL = Nothing+ , _upfVerifiedTeacher = Nothing+ , _upfName = Nothing+ , _upfEmailAddress = Nothing+ , _upfId = Nothing+ , _upfPermissions = Nothing+ }++-- | URL of user\'s profile photo. Read-only.+upfPhotoURL :: Lens' UserProFile (Maybe Text)+upfPhotoURL+ = lens _upfPhotoURL (\ s a -> s{_upfPhotoURL = a})++-- | Represents whether a G Suite for Education user\'s domain administrator+-- has explicitly verified them as being a teacher. If the user is not a+-- member of a G Suite for Education domain, than this field will always be+-- false. Read-only+upfVerifiedTeacher :: Lens' UserProFile (Maybe Bool)+upfVerifiedTeacher+ = lens _upfVerifiedTeacher+ (\ s a -> s{_upfVerifiedTeacher = a})++-- | Name of the user. Read-only.+upfName :: Lens' UserProFile (Maybe Name)+upfName = lens _upfName (\ s a -> s{_upfName = a})++-- | Email address of the user. Read-only.+upfEmailAddress :: Lens' UserProFile (Maybe Text)+upfEmailAddress+ = lens _upfEmailAddress+ (\ s a -> s{_upfEmailAddress = a})++-- | Identifier of the user. Read-only.+upfId :: Lens' UserProFile (Maybe Text)+upfId = lens _upfId (\ s a -> s{_upfId = a})++-- | Global permissions of the user. Read-only.+upfPermissions :: Lens' UserProFile [GlobalPermission]+upfPermissions+ = lens _upfPermissions+ (\ s a -> s{_upfPermissions = a})+ . _Default+ . _Coerce++instance FromJSON UserProFile where+ parseJSON+ = withObject "UserProFile"+ (\ o ->+ UserProFile' <$>+ (o .:? "photoUrl") <*> (o .:? "verifiedTeacher") <*>+ (o .:? "name")+ <*> (o .:? "emailAddress")+ <*> (o .:? "id")+ <*> (o .:? "permissions" .!= mempty))++instance ToJSON UserProFile where+ toJSON UserProFile'{..}+ = object+ (catMaybes+ [("photoUrl" .=) <$> _upfPhotoURL,+ ("verifiedTeacher" .=) <$> _upfVerifiedTeacher,+ ("name" .=) <$> _upfName,+ ("emailAddress" .=) <$> _upfEmailAddress,+ ("id" .=) <$> _upfId,+ ("permissions" .=) <$> _upfPermissions])++-- | Representation of a Google Drive folder.+--+-- /See:/ 'driveFolder' smart constructor.+data DriveFolder = DriveFolder'+ { _dId :: !(Maybe Text)+ , _dTitle :: !(Maybe Text)+ , _dAlternateLink :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'DriveFolder' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'dId'+--+-- * 'dTitle'+--+-- * 'dAlternateLink'+driveFolder+ :: DriveFolder+driveFolder =+ DriveFolder'+ { _dId = Nothing+ , _dTitle = Nothing+ , _dAlternateLink = Nothing+ }++-- | Drive API resource ID.+dId :: Lens' DriveFolder (Maybe Text)+dId = lens _dId (\ s a -> s{_dId = a})++-- | Title of the Drive folder. Read-only.+dTitle :: Lens' DriveFolder (Maybe Text)+dTitle = lens _dTitle (\ s a -> s{_dTitle = a})++-- | URL that can be used to access the Drive folder. Read-only.+dAlternateLink :: Lens' DriveFolder (Maybe Text)+dAlternateLink+ = lens _dAlternateLink+ (\ s a -> s{_dAlternateLink = a})++instance FromJSON DriveFolder where+ parseJSON+ = withObject "DriveFolder"+ (\ o ->+ DriveFolder' <$>+ (o .:? "id") <*> (o .:? "title") <*>+ (o .:? "alternateLink"))++instance ToJSON DriveFolder where+ toJSON DriveFolder'{..}+ = object+ (catMaybes+ [("id" .=) <$> _dId, ("title" .=) <$> _dTitle,+ ("alternateLink" .=) <$> _dAlternateLink])++-- | The history of the submission. This currently includes state and grade+-- histories.+--+-- /See:/ 'submissionHistory' smart constructor.+data SubmissionHistory = SubmissionHistory'+ { _shGradeHistory :: !(Maybe GradeHistory)+ , _shStateHistory :: !(Maybe StateHistory)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SubmissionHistory' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'shGradeHistory'+--+-- * 'shStateHistory'+submissionHistory+ :: SubmissionHistory+submissionHistory =+ SubmissionHistory'+ { _shGradeHistory = Nothing+ , _shStateHistory = Nothing+ }++-- | The grade history information of the submission, if present.+shGradeHistory :: Lens' SubmissionHistory (Maybe GradeHistory)+shGradeHistory+ = lens _shGradeHistory+ (\ s a -> s{_shGradeHistory = a})++-- | The state history information of the submission, if present.+shStateHistory :: Lens' SubmissionHistory (Maybe StateHistory)+shStateHistory+ = lens _shStateHistory+ (\ s a -> s{_shStateHistory = a})++instance FromJSON SubmissionHistory where+ parseJSON+ = withObject "SubmissionHistory"+ (\ o ->+ SubmissionHistory' <$>+ (o .:? "gradeHistory") <*> (o .:? "stateHistory"))++instance ToJSON SubmissionHistory where+ toJSON SubmissionHistory'{..}+ = object+ (catMaybes+ [("gradeHistory" .=) <$> _shGradeHistory,+ ("stateHistory" .=) <$> _shStateHistory])++-- | The history of each state this submission has been in.+--+-- /See:/ 'stateHistory' smart constructor.+data StateHistory = StateHistory'+ { _shState :: !(Maybe StateHistoryState)+ , _shActorUserId :: !(Maybe Text)+ , _shStateTimestamp :: !(Maybe DateTime')+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'StateHistory' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'shState'+--+-- * 'shActorUserId'+--+-- * 'shStateTimestamp'+stateHistory+ :: StateHistory+stateHistory =+ StateHistory'+ { _shState = Nothing+ , _shActorUserId = Nothing+ , _shStateTimestamp = Nothing+ }++-- | The workflow pipeline stage.+shState :: Lens' StateHistory (Maybe StateHistoryState)+shState = lens _shState (\ s a -> s{_shState = a})++-- | The teacher or student who made the change+shActorUserId :: Lens' StateHistory (Maybe Text)+shActorUserId+ = lens _shActorUserId+ (\ s a -> s{_shActorUserId = a})++-- | When the submission entered this state.+shStateTimestamp :: Lens' StateHistory (Maybe UTCTime)+shStateTimestamp+ = lens _shStateTimestamp+ (\ s a -> s{_shStateTimestamp = a})+ . mapping _DateTime++instance FromJSON StateHistory where+ parseJSON+ = withObject "StateHistory"+ (\ o ->+ StateHistory' <$>+ (o .:? "state") <*> (o .:? "actorUserId") <*>+ (o .:? "stateTimestamp"))++instance ToJSON StateHistory where+ toJSON StateHistory'{..}+ = object+ (catMaybes+ [("state" .=) <$> _shState,+ ("actorUserId" .=) <$> _shActorUserId,+ ("stateTimestamp" .=) <$> _shStateTimestamp])++-- | Additional details for multiple-choice questions.+--+-- /See:/ 'multipleChoiceQuestion' smart constructor.+newtype MultipleChoiceQuestion = MultipleChoiceQuestion'+ { _mcqChoices :: Maybe [Text]+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'MultipleChoiceQuestion' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'mcqChoices'+multipleChoiceQuestion+ :: MultipleChoiceQuestion+multipleChoiceQuestion =+ MultipleChoiceQuestion'+ { _mcqChoices = Nothing+ }++-- | Possible choices.+mcqChoices :: Lens' MultipleChoiceQuestion [Text]+mcqChoices+ = lens _mcqChoices (\ s a -> s{_mcqChoices = a}) .+ _Default+ . _Coerce++instance FromJSON MultipleChoiceQuestion where+ parseJSON+ = withObject "MultipleChoiceQuestion"+ (\ o ->+ MultipleChoiceQuestion' <$>+ (o .:? "choices" .!= mempty))++instance ToJSON MultipleChoiceQuestion where+ toJSON MultipleChoiceQuestion'{..}+ = object (catMaybes [("choices" .=) <$> _mcqChoices])++-- | A Course in Classroom.+--+-- /See:/ 'course' smart constructor.+data Course = Course'+ { _couCreationTime :: !(Maybe DateTime')+ , _couRoom :: !(Maybe Text)+ , _couCourseMaterialSets :: !(Maybe [CourseMaterialSet])+ , _couCalendarId :: !(Maybe Text)+ , _couTeacherGroupEmail :: !(Maybe Text)+ , _couTeacherFolder :: !(Maybe DriveFolder)+ , _couCourseState :: !(Maybe CourseCourseState)+ , _couGuardiansEnabled :: !(Maybe Bool)+ , _couEnrollmentCode :: !(Maybe Text)+ , _couUpdateTime :: !(Maybe DateTime')+ , _couOwnerId :: !(Maybe Text)+ , _couName :: !(Maybe Text)+ , _couId :: !(Maybe Text)+ , _couAlternateLink :: !(Maybe Text)+ , _couCourseGroupEmail :: !(Maybe Text)+ , _couDescription :: !(Maybe Text)+ , _couDescriptionHeading :: !(Maybe Text)+ , _couSection :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Course' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'couCreationTime'+--+-- * 'couRoom'+--+-- * 'couCourseMaterialSets'+--+-- * 'couCalendarId'+--+-- * 'couTeacherGroupEmail'+--+-- * 'couTeacherFolder'+--+-- * 'couCourseState'+--+-- * 'couGuardiansEnabled'+--+-- * 'couEnrollmentCode'+--+-- * 'couUpdateTime'+--+-- * 'couOwnerId'+--+-- * 'couName'+--+-- * 'couId'+--+-- * 'couAlternateLink'+--+-- * 'couCourseGroupEmail'+--+-- * 'couDescription'+--+-- * 'couDescriptionHeading'+--+-- * 'couSection'+course+ :: Course+course =+ Course'+ { _couCreationTime = Nothing+ , _couRoom = Nothing+ , _couCourseMaterialSets = Nothing+ , _couCalendarId = Nothing+ , _couTeacherGroupEmail = Nothing+ , _couTeacherFolder = Nothing+ , _couCourseState = Nothing+ , _couGuardiansEnabled = Nothing+ , _couEnrollmentCode = Nothing+ , _couUpdateTime = Nothing+ , _couOwnerId = Nothing+ , _couName = Nothing+ , _couId = Nothing+ , _couAlternateLink = Nothing+ , _couCourseGroupEmail = Nothing+ , _couDescription = Nothing+ , _couDescriptionHeading = Nothing+ , _couSection = Nothing+ }++-- | Creation time of the course. Specifying this field in a course update+-- mask results in an error. Read-only.+couCreationTime :: Lens' Course (Maybe UTCTime)+couCreationTime+ = lens _couCreationTime+ (\ s a -> s{_couCreationTime = a})+ . mapping _DateTime++-- | Optional room location. For example, \"301\". If set, this field must be+-- a valid UTF-8 string and no longer than 650 characters.+couRoom :: Lens' Course (Maybe Text)+couRoom = lens _couRoom (\ s a -> s{_couRoom = a})++-- | Sets of materials that appear on the \"about\" page of this course.+-- Read-only.+couCourseMaterialSets :: Lens' Course [CourseMaterialSet]+couCourseMaterialSets+ = lens _couCourseMaterialSets+ (\ s a -> s{_couCourseMaterialSets = a})+ . _Default+ . _Coerce++-- | The Calendar ID for a calendar that all course members can see, to which+-- Classroom adds events for course work and announcements in the course.+-- Read-only.+couCalendarId :: Lens' Course (Maybe Text)+couCalendarId+ = lens _couCalendarId+ (\ s a -> s{_couCalendarId = a})++-- | The email address of a Google group containing all teachers of the+-- course. This group does not accept email and can only be used for+-- permissions. Read-only.+couTeacherGroupEmail :: Lens' Course (Maybe Text)+couTeacherGroupEmail+ = lens _couTeacherGroupEmail+ (\ s a -> s{_couTeacherGroupEmail = a})++-- | Information about a Drive Folder that is shared with all teachers of the+-- course. This field will only be set for teachers of the course and+-- domain administrators. Read-only.+couTeacherFolder :: Lens' Course (Maybe DriveFolder)+couTeacherFolder+ = lens _couTeacherFolder+ (\ s a -> s{_couTeacherFolder = a})++-- | State of the course. If unspecified, the default state is+-- \`PROVISIONED\`.+couCourseState :: Lens' Course (Maybe CourseCourseState)+couCourseState+ = lens _couCourseState+ (\ s a -> s{_couCourseState = a})++-- | Whether or not guardian notifications are enabled for this course.+-- Read-only.+couGuardiansEnabled :: Lens' Course (Maybe Bool)+couGuardiansEnabled+ = lens _couGuardiansEnabled+ (\ s a -> s{_couGuardiansEnabled = a})++-- | Enrollment code to use when joining this course. Specifying this field+-- in a course update mask results in an error. Read-only.+couEnrollmentCode :: Lens' Course (Maybe Text)+couEnrollmentCode+ = lens _couEnrollmentCode+ (\ s a -> s{_couEnrollmentCode = a})++-- | Time of the most recent update to this course. Specifying this field in+-- a course update mask results in an error. Read-only.+couUpdateTime :: Lens' Course (Maybe UTCTime)+couUpdateTime+ = lens _couUpdateTime+ (\ s a -> s{_couUpdateTime = a})+ . mapping _DateTime++-- | The identifier of the owner of a course. When specified as a parameter+-- of a create course request, this field is required. The identifier can+-- be one of the following: * the numeric identifier for the user * the+-- email address of the user * the string literal \`\"me\"\`, indicating+-- the requesting user This must be set in a create request. Admins can+-- also specify this field in a patch course request to transfer ownership.+-- In other contexts, it is read-only.+couOwnerId :: Lens' Course (Maybe Text)+couOwnerId+ = lens _couOwnerId (\ s a -> s{_couOwnerId = a})++-- | Name of the course. For example, \"10th Grade Biology\". The name is+-- required. It must be between 1 and 750 characters and a valid UTF-8+-- string.+couName :: Lens' Course (Maybe Text)+couName = lens _couName (\ s a -> s{_couName = a})++-- | Identifier for this course assigned by Classroom. When creating a+-- course, you may optionally set this identifier to an alias string in the+-- request to create a corresponding alias. The \`id\` is still assigned by+-- Classroom and cannot be updated after the course is created. Specifying+-- this field in a course update mask results in an error.+couId :: Lens' Course (Maybe Text)+couId = lens _couId (\ s a -> s{_couId = a})++-- | Absolute link to this course in the Classroom web UI. Read-only.+couAlternateLink :: Lens' Course (Maybe Text)+couAlternateLink+ = lens _couAlternateLink+ (\ s a -> s{_couAlternateLink = a})++-- | The email address of a Google group containing all members of the+-- course. This group does not accept email and can only be used for+-- permissions. Read-only.+couCourseGroupEmail :: Lens' Course (Maybe Text)+couCourseGroupEmail+ = lens _couCourseGroupEmail+ (\ s a -> s{_couCourseGroupEmail = a})++-- | Optional description. For example, \"We\'ll be learning about the+-- structure of living creatures from a combination of textbooks, guest+-- lectures, and lab work. Expect to be excited!\" If set, this field must+-- be a valid UTF-8 string and no longer than 30,000 characters.+couDescription :: Lens' Course (Maybe Text)+couDescription+ = lens _couDescription+ (\ s a -> s{_couDescription = a})++-- | Optional heading for the description. For example, \"Welcome to 10th+-- Grade Biology.\" If set, this field must be a valid UTF-8 string and no+-- longer than 3600 characters.+couDescriptionHeading :: Lens' Course (Maybe Text)+couDescriptionHeading+ = lens _couDescriptionHeading+ (\ s a -> s{_couDescriptionHeading = a})++-- | Section of the course. For example, \"Period 2\". If set, this field+-- must be a valid UTF-8 string and no longer than 2800 characters.+couSection :: Lens' Course (Maybe Text)+couSection+ = lens _couSection (\ s a -> s{_couSection = a})++instance FromJSON Course where+ parseJSON+ = withObject "Course"+ (\ o ->+ Course' <$>+ (o .:? "creationTime") <*> (o .:? "room") <*>+ (o .:? "courseMaterialSets" .!= mempty)+ <*> (o .:? "calendarId")+ <*> (o .:? "teacherGroupEmail")+ <*> (o .:? "teacherFolder")+ <*> (o .:? "courseState")+ <*> (o .:? "guardiansEnabled")+ <*> (o .:? "enrollmentCode")+ <*> (o .:? "updateTime")+ <*> (o .:? "ownerId")+ <*> (o .:? "name")+ <*> (o .:? "id")+ <*> (o .:? "alternateLink")+ <*> (o .:? "courseGroupEmail")+ <*> (o .:? "description")+ <*> (o .:? "descriptionHeading")+ <*> (o .:? "section"))++instance ToJSON Course where+ toJSON Course'{..}+ = object+ (catMaybes+ [("creationTime" .=) <$> _couCreationTime,+ ("room" .=) <$> _couRoom,+ ("courseMaterialSets" .=) <$> _couCourseMaterialSets,+ ("calendarId" .=) <$> _couCalendarId,+ ("teacherGroupEmail" .=) <$> _couTeacherGroupEmail,+ ("teacherFolder" .=) <$> _couTeacherFolder,+ ("courseState" .=) <$> _couCourseState,+ ("guardiansEnabled" .=) <$> _couGuardiansEnabled,+ ("enrollmentCode" .=) <$> _couEnrollmentCode,+ ("updateTime" .=) <$> _couUpdateTime,+ ("ownerId" .=) <$> _couOwnerId,+ ("name" .=) <$> _couName, ("id" .=) <$> _couId,+ ("alternateLink" .=) <$> _couAlternateLink,+ ("courseGroupEmail" .=) <$> _couCourseGroupEmail,+ ("description" .=) <$> _couDescription,+ ("descriptionHeading" .=) <$> _couDescriptionHeading,+ ("section" .=) <$> _couSection])++-- | Represents a time of day. The date and time zone are either not+-- significant or are specified elsewhere. An API may choose to allow leap+-- seconds. Related types are google.type.Date and+-- \`google.protobuf.Timestamp\`.+--+-- /See:/ 'timeOfDay' smart constructor.+data TimeOfDay' = TimeOfDay''+ { _todNanos :: !(Maybe (Textual Int32))+ , _todHours :: !(Maybe (Textual Int32))+ , _todMinutes :: !(Maybe (Textual Int32))+ , _todSeconds :: !(Maybe (Textual Int32))+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'TimeOfDay' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'todNanos'+--+-- * 'todHours'+--+-- * 'todMinutes'+--+-- * 'todSeconds'+timeOfDay+ :: TimeOfDay'+timeOfDay =+ TimeOfDay''+ { _todNanos = Nothing+ , _todHours = Nothing+ , _todMinutes = Nothing+ , _todSeconds = Nothing+ }++-- | Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.+todNanos :: Lens' TimeOfDay' (Maybe Int32)+todNanos+ = lens _todNanos (\ s a -> s{_todNanos = a}) .+ mapping _Coerce++-- | Hours of day in 24 hour format. Should be from 0 to 23. An API may+-- choose to allow the value \"24:00:00\" for scenarios like business+-- closing time.+todHours :: Lens' TimeOfDay' (Maybe Int32)+todHours+ = lens _todHours (\ s a -> s{_todHours = a}) .+ mapping _Coerce++-- | Minutes of hour of day. Must be from 0 to 59.+todMinutes :: Lens' TimeOfDay' (Maybe Int32)+todMinutes+ = lens _todMinutes (\ s a -> s{_todMinutes = a}) .+ mapping _Coerce++-- | Seconds of minutes of the time. Must normally be from 0 to 59. An API+-- may allow the value 60 if it allows leap-seconds.+todSeconds :: Lens' TimeOfDay' (Maybe Int32)+todSeconds+ = lens _todSeconds (\ s a -> s{_todSeconds = a}) .+ mapping _Coerce++instance FromJSON TimeOfDay' where+ parseJSON+ = withObject "TimeOfDay"+ (\ o ->+ TimeOfDay'' <$>+ (o .:? "nanos") <*> (o .:? "hours") <*>+ (o .:? "minutes")+ <*> (o .:? "seconds"))++instance ToJSON TimeOfDay' where+ toJSON TimeOfDay''{..}+ = object+ (catMaybes+ [("nanos" .=) <$> _todNanos,+ ("hours" .=) <$> _todHours,+ ("minutes" .=) <$> _todMinutes,+ ("seconds" .=) <$> _todSeconds])++-- | Response when listing guardian invitations.+--+-- /See:/ 'listGuardianInvitationsResponse' smart constructor.+data ListGuardianInvitationsResponse = ListGuardianInvitationsResponse'+ { _lgirNextPageToken :: !(Maybe Text)+ , _lgirGuardianInvitations :: !(Maybe [GuardianInvitation])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListGuardianInvitationsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lgirNextPageToken'+--+-- * 'lgirGuardianInvitations'+listGuardianInvitationsResponse+ :: ListGuardianInvitationsResponse+listGuardianInvitationsResponse =+ ListGuardianInvitationsResponse'+ { _lgirNextPageToken = Nothing+ , _lgirGuardianInvitations = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lgirNextPageToken :: Lens' ListGuardianInvitationsResponse (Maybe Text)+lgirNextPageToken+ = lens _lgirNextPageToken+ (\ s a -> s{_lgirNextPageToken = a})++-- | Guardian invitations that matched the list request.+lgirGuardianInvitations :: Lens' ListGuardianInvitationsResponse [GuardianInvitation]+lgirGuardianInvitations+ = lens _lgirGuardianInvitations+ (\ s a -> s{_lgirGuardianInvitations = a})+ . _Default+ . _Coerce++instance FromJSON ListGuardianInvitationsResponse+ where+ parseJSON+ = withObject "ListGuardianInvitationsResponse"+ (\ o ->+ ListGuardianInvitationsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "guardianInvitations" .!= mempty))++instance ToJSON ListGuardianInvitationsResponse where+ toJSON ListGuardianInvitationsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lgirNextPageToken,+ ("guardianInvitations" .=) <$>+ _lgirGuardianInvitations])++-- | Additional details for assignments.+--+-- /See:/ 'assignment' smart constructor.+newtype Assignment = Assignment'+ { _aStudentWorkFolder :: Maybe DriveFolder+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Assignment' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'aStudentWorkFolder'+assignment+ :: Assignment+assignment =+ Assignment'+ { _aStudentWorkFolder = Nothing+ }++-- | Drive folder where attachments from student submissions are placed. This+-- is only populated for course teachers and administrators.+aStudentWorkFolder :: Lens' Assignment (Maybe DriveFolder)+aStudentWorkFolder+ = lens _aStudentWorkFolder+ (\ s a -> s{_aStudentWorkFolder = a})++instance FromJSON Assignment where+ parseJSON+ = withObject "Assignment"+ (\ o -> Assignment' <$> (o .:? "studentWorkFolder"))++instance ToJSON Assignment where+ toJSON Assignment'{..}+ = object+ (catMaybes+ [("studentWorkFolder" .=) <$> _aStudentWorkFolder])++-- | Response when listing students.+--+-- /See:/ 'listStudentsResponse' smart constructor.+data ListStudentsResponse = ListStudentsResponse'+ { _lsrNextPageToken :: !(Maybe Text)+ , _lsrStudents :: !(Maybe [Student])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListStudentsResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'lsrNextPageToken'+--+-- * 'lsrStudents'+listStudentsResponse+ :: ListStudentsResponse+listStudentsResponse =+ ListStudentsResponse'+ { _lsrNextPageToken = Nothing+ , _lsrStudents = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+lsrNextPageToken :: Lens' ListStudentsResponse (Maybe Text)+lsrNextPageToken+ = lens _lsrNextPageToken+ (\ s a -> s{_lsrNextPageToken = a})++-- | Students who match the list request.+lsrStudents :: Lens' ListStudentsResponse [Student]+lsrStudents+ = lens _lsrStudents (\ s a -> s{_lsrStudents = a}) .+ _Default+ . _Coerce++instance FromJSON ListStudentsResponse where+ parseJSON+ = withObject "ListStudentsResponse"+ (\ o ->+ ListStudentsResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "students" .!= mempty))++instance ToJSON ListStudentsResponse where+ toJSON ListStudentsResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _lsrNextPageToken,+ ("students" .=) <$> _lsrStudents])++-- | Drive file that is used as material for course work.+--+-- /See:/ 'sharedDriveFile' smart constructor.+data SharedDriveFile = SharedDriveFile'+ { _sdfDriveFile :: !(Maybe DriveFile)+ , _sdfShareMode :: !(Maybe SharedDriveFileShareMode)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'SharedDriveFile' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sdfDriveFile'+--+-- * 'sdfShareMode'+sharedDriveFile+ :: SharedDriveFile+sharedDriveFile =+ SharedDriveFile'+ { _sdfDriveFile = Nothing+ , _sdfShareMode = Nothing+ }++-- | Drive file details.+sdfDriveFile :: Lens' SharedDriveFile (Maybe DriveFile)+sdfDriveFile+ = lens _sdfDriveFile (\ s a -> s{_sdfDriveFile = a})++-- | Mechanism by which students access the Drive item.+sdfShareMode :: Lens' SharedDriveFile (Maybe SharedDriveFileShareMode)+sdfShareMode+ = lens _sdfShareMode (\ s a -> s{_sdfShareMode = a})++instance FromJSON SharedDriveFile where+ parseJSON+ = withObject "SharedDriveFile"+ (\ o ->+ SharedDriveFile' <$>+ (o .:? "driveFile") <*> (o .:? "shareMode"))++instance ToJSON SharedDriveFile where+ toJSON SharedDriveFile'{..}+ = object+ (catMaybes+ [("driveFile" .=) <$> _sdfDriveFile,+ ("shareMode" .=) <$> _sdfShareMode])++-- | Alternative identifier for a course. An alias uniquely identifies a+-- course. It must be unique within one of the following scopes: * domain:+-- A domain-scoped alias is visible to all users within the alias+-- creator\'s domain and can be created only by a domain admin. A+-- domain-scoped alias is often used when a course has an identifier+-- external to Classroom. * project: A project-scoped alias is visible to+-- any request from an application using the Developer Console project ID+-- that created the alias and can be created by any project. A+-- project-scoped alias is often used when an application has alternative+-- identifiers. A random value can also be used to avoid duplicate courses+-- in the event of transmission failures, as retrying a request will return+-- \`ALREADY_EXISTS\` if a previous one has succeeded.+--+-- /See:/ 'courseAlias' smart constructor.+newtype CourseAlias = CourseAlias'+ { _caAlias :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CourseAlias' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'caAlias'+courseAlias+ :: CourseAlias+courseAlias =+ CourseAlias'+ { _caAlias = Nothing+ }++-- | Alias string. The format of the string indicates the desired alias+-- scoping. * \`d:\` indicates a domain-scoped alias. Example:+-- \`d:math_101\` * \`p:\` indicates a project-scoped alias. Example:+-- \`p:abc123\` This field has a maximum length of 256 characters.+caAlias :: Lens' CourseAlias (Maybe Text)+caAlias = lens _caAlias (\ s a -> s{_caAlias = a})++instance FromJSON CourseAlias where+ parseJSON+ = withObject "CourseAlias"+ (\ o -> CourseAlias' <$> (o .:? "alias"))++instance ToJSON CourseAlias where+ toJSON CourseAlias'{..}+ = object (catMaybes [("alias" .=) <$> _caAlias])++-- | Information about a \`Feed\` with a \`feed_type\` of+-- \`COURSE_ROSTER_CHANGES\`.+--+-- /See:/ 'courseRosterChangesInfo' smart constructor.+newtype CourseRosterChangesInfo = CourseRosterChangesInfo'+ { _crciCourseId :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CourseRosterChangesInfo' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'crciCourseId'+courseRosterChangesInfo+ :: CourseRosterChangesInfo+courseRosterChangesInfo =+ CourseRosterChangesInfo'+ { _crciCourseId = Nothing+ }++-- | The \`course_id\` of the course to subscribe to roster changes for.+crciCourseId :: Lens' CourseRosterChangesInfo (Maybe Text)+crciCourseId+ = lens _crciCourseId (\ s a -> s{_crciCourseId = a})++instance FromJSON CourseRosterChangesInfo where+ parseJSON+ = withObject "CourseRosterChangesInfo"+ (\ o ->+ CourseRosterChangesInfo' <$> (o .:? "courseId"))++instance ToJSON CourseRosterChangesInfo where+ toJSON CourseRosterChangesInfo'{..}+ = object+ (catMaybes [("courseId" .=) <$> _crciCourseId])++-- | Contains fields to add or remove students from a course work or+-- announcement where the \`assigneeMode\` is set to+-- \`INDIVIDUAL_STUDENTS\`.+--+-- /See:/ 'modifyIndividualStudentsOptions' smart constructor.+data ModifyIndividualStudentsOptions = ModifyIndividualStudentsOptions'+ { _misoAddStudentIds :: !(Maybe [Text])+ , _misoRemoveStudentIds :: !(Maybe [Text])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ModifyIndividualStudentsOptions' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'misoAddStudentIds'+--+-- * 'misoRemoveStudentIds'+modifyIndividualStudentsOptions+ :: ModifyIndividualStudentsOptions+modifyIndividualStudentsOptions =+ ModifyIndividualStudentsOptions'+ { _misoAddStudentIds = Nothing+ , _misoRemoveStudentIds = Nothing+ }++-- | Ids of students to be added as having access to this+-- coursework\/announcement.+misoAddStudentIds :: Lens' ModifyIndividualStudentsOptions [Text]+misoAddStudentIds+ = lens _misoAddStudentIds+ (\ s a -> s{_misoAddStudentIds = a})+ . _Default+ . _Coerce++-- | Ids of students to be removed from having access to this+-- coursework\/announcement.+misoRemoveStudentIds :: Lens' ModifyIndividualStudentsOptions [Text]+misoRemoveStudentIds+ = lens _misoRemoveStudentIds+ (\ s a -> s{_misoRemoveStudentIds = a})+ . _Default+ . _Coerce++instance FromJSON ModifyIndividualStudentsOptions+ where+ parseJSON+ = withObject "ModifyIndividualStudentsOptions"+ (\ o ->+ ModifyIndividualStudentsOptions' <$>+ (o .:? "addStudentIds" .!= mempty) <*>+ (o .:? "removeStudentIds" .!= mempty))++instance ToJSON ModifyIndividualStudentsOptions where+ toJSON ModifyIndividualStudentsOptions'{..}+ = object+ (catMaybes+ [("addStudentIds" .=) <$> _misoAddStudentIds,+ ("removeStudentIds" .=) <$> _misoRemoveStudentIds])++-- | A reference to a Cloud Pub\/Sub topic. To register for notifications,+-- the owner of the topic must grant+-- \`classroom-notifications\'system.gserviceaccount.com\` the+-- \`projects.topics.publish\` permission.+--+-- /See:/ 'cloudPubsubTopic' smart constructor.+newtype CloudPubsubTopic = CloudPubsubTopic'+ { _cptTopicName :: Maybe Text+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CloudPubsubTopic' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cptTopicName'+cloudPubsubTopic+ :: CloudPubsubTopic+cloudPubsubTopic =+ CloudPubsubTopic'+ { _cptTopicName = Nothing+ }++-- | The \`name\` field of a Cloud Pub\/Sub+-- [Topic](https:\/\/cloud.google.com\/pubsub\/docs\/reference\/rest\/v1\/projects.topics#Topic).+cptTopicName :: Lens' CloudPubsubTopic (Maybe Text)+cptTopicName+ = lens _cptTopicName (\ s a -> s{_cptTopicName = a})++instance FromJSON CloudPubsubTopic where+ parseJSON+ = withObject "CloudPubsubTopic"+ (\ o -> CloudPubsubTopic' <$> (o .:? "topicName"))++instance ToJSON CloudPubsubTopic where+ toJSON CloudPubsubTopic'{..}+ = object+ (catMaybes [("topicName" .=) <$> _cptTopicName])++-- | Google Forms item.+--+-- /See:/ 'form' smart constructor.+data Form = Form'+ { _fThumbnailURL :: !(Maybe Text)+ , _fFormURL :: !(Maybe Text)+ , _fTitle :: !(Maybe Text)+ , _fResponseURL :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Form' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'fThumbnailURL'+--+-- * 'fFormURL'+--+-- * 'fTitle'+--+-- * 'fResponseURL'+form+ :: Form+form =+ Form'+ { _fThumbnailURL = Nothing+ , _fFormURL = Nothing+ , _fTitle = Nothing+ , _fResponseURL = Nothing+ }++-- | URL of a thumbnail image of the Form. Read-only.+fThumbnailURL :: Lens' Form (Maybe Text)+fThumbnailURL+ = lens _fThumbnailURL+ (\ s a -> s{_fThumbnailURL = a})++-- | URL of the form.+fFormURL :: Lens' Form (Maybe Text)+fFormURL = lens _fFormURL (\ s a -> s{_fFormURL = a})++-- | Title of the Form. Read-only.+fTitle :: Lens' Form (Maybe Text)+fTitle = lens _fTitle (\ s a -> s{_fTitle = a})++-- | URL of the form responses document. Only set if respsonses have been+-- recorded and only when the requesting user is an editor of the form.+-- Read-only.+fResponseURL :: Lens' Form (Maybe Text)+fResponseURL+ = lens _fResponseURL (\ s a -> s{_fResponseURL = a})++instance FromJSON Form where+ parseJSON+ = withObject "Form"+ (\ o ->+ Form' <$>+ (o .:? "thumbnailUrl") <*> (o .:? "formUrl") <*>+ (o .:? "title")+ <*> (o .:? "responseUrl"))++instance ToJSON Form where+ toJSON Form'{..}+ = object+ (catMaybes+ [("thumbnailUrl" .=) <$> _fThumbnailURL,+ ("formUrl" .=) <$> _fFormURL,+ ("title" .=) <$> _fTitle,+ ("responseUrl" .=) <$> _fResponseURL])++-- | Response when listing teachers.+--+-- /See:/ 'listTeachersResponse' smart constructor.+data ListTeachersResponse = ListTeachersResponse'+ { _ltrNextPageToken :: !(Maybe Text)+ , _ltrTeachers :: !(Maybe [Teacher])+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'ListTeachersResponse' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ltrNextPageToken'+--+-- * 'ltrTeachers'+listTeachersResponse+ :: ListTeachersResponse+listTeachersResponse =+ ListTeachersResponse'+ { _ltrNextPageToken = Nothing+ , _ltrTeachers = Nothing+ }++-- | Token identifying the next page of results to return. If empty, no+-- further results are available.+ltrNextPageToken :: Lens' ListTeachersResponse (Maybe Text)+ltrNextPageToken+ = lens _ltrNextPageToken+ (\ s a -> s{_ltrNextPageToken = a})++-- | Teachers who match the list request.+ltrTeachers :: Lens' ListTeachersResponse [Teacher]+ltrTeachers+ = lens _ltrTeachers (\ s a -> s{_ltrTeachers = a}) .+ _Default+ . _Coerce++instance FromJSON ListTeachersResponse where+ parseJSON+ = withObject "ListTeachersResponse"+ (\ o ->+ ListTeachersResponse' <$>+ (o .:? "nextPageToken") <*>+ (o .:? "teachers" .!= mempty))++instance ToJSON ListTeachersResponse where+ toJSON ListTeachersResponse'{..}+ = object+ (catMaybes+ [("nextPageToken" .=) <$> _ltrNextPageToken,+ ("teachers" .=) <$> _ltrTeachers])++-- | Student in a course.+--+-- /See:/ 'student' smart constructor.+data Student = Student'+ { _sCourseId :: !(Maybe Text)+ , _sProFile :: !(Maybe UserProFile)+ , _sStudentWorkFolder :: !(Maybe DriveFolder)+ , _sUserId :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Student' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'sCourseId'+--+-- * 'sProFile'+--+-- * 'sStudentWorkFolder'+--+-- * 'sUserId'+student+ :: Student+student =+ Student'+ { _sCourseId = Nothing+ , _sProFile = Nothing+ , _sStudentWorkFolder = Nothing+ , _sUserId = Nothing+ }++-- | Identifier of the course. Read-only.+sCourseId :: Lens' Student (Maybe Text)+sCourseId+ = lens _sCourseId (\ s a -> s{_sCourseId = a})++-- | Global user information for the student. Read-only.+sProFile :: Lens' Student (Maybe UserProFile)+sProFile = lens _sProFile (\ s a -> s{_sProFile = a})++-- | Information about a Drive Folder for this student\'s work in this+-- course. Only visible to the student and domain administrators.+-- Read-only.+sStudentWorkFolder :: Lens' Student (Maybe DriveFolder)+sStudentWorkFolder+ = lens _sStudentWorkFolder+ (\ s a -> s{_sStudentWorkFolder = a})++-- | Identifier of the user. When specified as a parameter of a request, this+-- identifier can be one of the following: * the numeric identifier for the+-- user * the email address of the user * the string literal \`\"me\"\`,+-- indicating the requesting user+sUserId :: Lens' Student (Maybe Text)+sUserId = lens _sUserId (\ s a -> s{_sUserId = a})++instance FromJSON Student where+ parseJSON+ = withObject "Student"+ (\ o ->+ Student' <$>+ (o .:? "courseId") <*> (o .:? "profile") <*>+ (o .:? "studentWorkFolder")+ <*> (o .:? "userId"))++instance ToJSON Student where+ toJSON Student'{..}+ = object+ (catMaybes+ [("courseId" .=) <$> _sCourseId,+ ("profile" .=) <$> _sProFile,+ ("studentWorkFolder" .=) <$> _sStudentWorkFolder,+ ("userId" .=) <$> _sUserId])++-- | An instruction to Classroom to send notifications from the \`feed\` to+-- the provided destination.+--+-- /See:/ 'registration' smart constructor.+data Registration = Registration'+ { _rRegistrationId :: !(Maybe Text)+ , _rExpiryTime :: !(Maybe DateTime')+ , _rFeed :: !(Maybe Feed)+ , _rCloudPubsubTopic :: !(Maybe CloudPubsubTopic)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'Registration' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rRegistrationId'+--+-- * 'rExpiryTime'+--+-- * 'rFeed'+--+-- * 'rCloudPubsubTopic'+registration+ :: Registration+registration =+ Registration'+ { _rRegistrationId = Nothing+ , _rExpiryTime = Nothing+ , _rFeed = Nothing+ , _rCloudPubsubTopic = Nothing+ }++-- | A server-generated unique identifier for this \`Registration\`.+-- Read-only.+rRegistrationId :: Lens' Registration (Maybe Text)+rRegistrationId+ = lens _rRegistrationId+ (\ s a -> s{_rRegistrationId = a})++-- | The time until which the \`Registration\` is effective. This is a+-- read-only field assigned by the server.+rExpiryTime :: Lens' Registration (Maybe UTCTime)+rExpiryTime+ = lens _rExpiryTime (\ s a -> s{_rExpiryTime = a}) .+ mapping _DateTime++-- | Specification for the class of notifications that Classroom should+-- deliver to the destination.+rFeed :: Lens' Registration (Maybe Feed)+rFeed = lens _rFeed (\ s a -> s{_rFeed = a})++-- | The Cloud Pub\/Sub topic that notifications are to be sent to.+rCloudPubsubTopic :: Lens' Registration (Maybe CloudPubsubTopic)+rCloudPubsubTopic+ = lens _rCloudPubsubTopic+ (\ s a -> s{_rCloudPubsubTopic = a})++instance FromJSON Registration where+ parseJSON+ = withObject "Registration"+ (\ o ->+ Registration' <$>+ (o .:? "registrationId") <*> (o .:? "expiryTime") <*>+ (o .:? "feed")+ <*> (o .:? "cloudPubsubTopic"))++instance ToJSON Registration where+ toJSON Registration'{..}+ = object+ (catMaybes+ [("registrationId" .=) <$> _rRegistrationId,+ ("expiryTime" .=) <$> _rExpiryTime,+ ("feed" .=) <$> _rFeed,+ ("cloudPubsubTopic" .=) <$> _rCloudPubsubTopic])
gen/Network/Google/Classroom/Types/Sum.hs view
@@ -16,4 +16,773 @@ -- module Network.Google.Classroom.Types.Sum where -import Network.Google.Prelude+import Network.Google.Prelude hiding (Bytes)++-- | The type of grade change at this time in the submission grade history.+data GradeHistoryGradeChangeType+ = UnknownGradeChangeType+ -- ^ @UNKNOWN_GRADE_CHANGE_TYPE@+ -- No grade change type specified. This should never be returned.+ | DraftGradePointsEarnedChange+ -- ^ @DRAFT_GRADE_POINTS_EARNED_CHANGE@+ -- A change in the numerator of the draft grade.+ | AssignedGradePointsEarnedChange+ -- ^ @ASSIGNED_GRADE_POINTS_EARNED_CHANGE@+ -- A change in the numerator of the assigned grade.+ | MaxPointsChange+ -- ^ @MAX_POINTS_CHANGE@+ -- A change in the denominator of the grade.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable GradeHistoryGradeChangeType++instance FromHttpApiData GradeHistoryGradeChangeType where+ parseQueryParam = \case+ "UNKNOWN_GRADE_CHANGE_TYPE" -> Right UnknownGradeChangeType+ "DRAFT_GRADE_POINTS_EARNED_CHANGE" -> Right DraftGradePointsEarnedChange+ "ASSIGNED_GRADE_POINTS_EARNED_CHANGE" -> Right AssignedGradePointsEarnedChange+ "MAX_POINTS_CHANGE" -> Right MaxPointsChange+ x -> Left ("Unable to parse GradeHistoryGradeChangeType from: " <> x)++instance ToHttpApiData GradeHistoryGradeChangeType where+ toQueryParam = \case+ UnknownGradeChangeType -> "UNKNOWN_GRADE_CHANGE_TYPE"+ DraftGradePointsEarnedChange -> "DRAFT_GRADE_POINTS_EARNED_CHANGE"+ AssignedGradePointsEarnedChange -> "ASSIGNED_GRADE_POINTS_EARNED_CHANGE"+ MaxPointsChange -> "MAX_POINTS_CHANGE"++instance FromJSON GradeHistoryGradeChangeType where+ parseJSON = parseJSONText "GradeHistoryGradeChangeType"++instance ToJSON GradeHistoryGradeChangeType where+ toJSON = toJSONText++-- | State of the course. If unspecified, the default state is+-- \`PROVISIONED\`.+data CourseCourseState+ = CourseStateUnspecified+ -- ^ @COURSE_STATE_UNSPECIFIED@+ -- No course state. No returned Course message will use this value.+ | Active+ -- ^ @ACTIVE@+ -- The course is active.+ | Archived+ -- ^ @ARCHIVED@+ -- The course has been archived. You cannot modify it except to change it+ -- to a different state.+ | Provisioned+ -- ^ @PROVISIONED@+ -- The course has been created, but not yet activated. It is accessible by+ -- the primary teacher and domain administrators, who may modify it or+ -- change it to the \`ACTIVE\` or \`DECLINED\` states. A course may only be+ -- changed to \`PROVISIONED\` if it is in the \`DECLINED\` state.+ | Declined+ -- ^ @DECLINED@+ -- The course has been created, but declined. It is accessible by the+ -- course owner and domain administrators, though it will not be displayed+ -- in the web UI. You cannot modify the course except to change it to the+ -- \`PROVISIONED\` state. A course may only be changed to \`DECLINED\` if+ -- it is in the \`PROVISIONED\` state.+ | Suspended+ -- ^ @SUSPENDED@+ -- The course has been suspended. You cannot modify the course, and only+ -- the user identified by the \`owner_id\` can view the course. A course+ -- may be placed in this state if it potentially violates the Terms of+ -- Service.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable CourseCourseState++instance FromHttpApiData CourseCourseState where+ parseQueryParam = \case+ "COURSE_STATE_UNSPECIFIED" -> Right CourseStateUnspecified+ "ACTIVE" -> Right Active+ "ARCHIVED" -> Right Archived+ "PROVISIONED" -> Right Provisioned+ "DECLINED" -> Right Declined+ "SUSPENDED" -> Right Suspended+ x -> Left ("Unable to parse CourseCourseState from: " <> x)++instance ToHttpApiData CourseCourseState where+ toQueryParam = \case+ CourseStateUnspecified -> "COURSE_STATE_UNSPECIFIED"+ Active -> "ACTIVE"+ Archived -> "ARCHIVED"+ Provisioned -> "PROVISIONED"+ Declined -> "DECLINED"+ Suspended -> "SUSPENDED"++instance FromJSON CourseCourseState where+ parseJSON = parseJSONText "CourseCourseState"++instance ToJSON CourseCourseState where+ toJSON = toJSONText++-- | The workflow pipeline stage.+data StateHistoryState+ = StateUnspecified+ -- ^ @STATE_UNSPECIFIED@+ -- No state specified. This should never be returned.+ | Created+ -- ^ @CREATED@+ -- The Submission has been created.+ | TurnedIn+ -- ^ @TURNED_IN@+ -- The student has turned in an assigned document, which may or may not be+ -- a template.+ | Returned+ -- ^ @RETURNED@+ -- The teacher has returned the assigned document to the student.+ | ReclaimedByStudent+ -- ^ @RECLAIMED_BY_STUDENT@+ -- The student turned in the assigned document, and then chose to+ -- \"unsubmit\" the assignment, giving the student control again as the+ -- owner.+ | StudentEditedAfterTurnIn+ -- ^ @STUDENT_EDITED_AFTER_TURN_IN@+ -- The student edited their submission after turning it in. Currently, only+ -- used by Questions, when the student edits their answer.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable StateHistoryState++instance FromHttpApiData StateHistoryState where+ parseQueryParam = \case+ "STATE_UNSPECIFIED" -> Right StateUnspecified+ "CREATED" -> Right Created+ "TURNED_IN" -> Right TurnedIn+ "RETURNED" -> Right Returned+ "RECLAIMED_BY_STUDENT" -> Right ReclaimedByStudent+ "STUDENT_EDITED_AFTER_TURN_IN" -> Right StudentEditedAfterTurnIn+ x -> Left ("Unable to parse StateHistoryState from: " <> x)++instance ToHttpApiData StateHistoryState where+ toQueryParam = \case+ StateUnspecified -> "STATE_UNSPECIFIED"+ Created -> "CREATED"+ TurnedIn -> "TURNED_IN"+ Returned -> "RETURNED"+ ReclaimedByStudent -> "RECLAIMED_BY_STUDENT"+ StudentEditedAfterTurnIn -> "STUDENT_EDITED_AFTER_TURN_IN"++instance FromJSON StateHistoryState where+ parseJSON = parseJSONText "StateHistoryState"++instance ToJSON StateHistoryState where+ toJSON = toJSONText++-- | Type of this course work. The type is set when the course work is+-- created and cannot be changed.+data CourseWorkWorkType+ = CWWTCourseWorkTypeUnspecified+ -- ^ @COURSE_WORK_TYPE_UNSPECIFIED@+ -- No work type specified. This is never returned.+ | CWWTAssignment+ -- ^ @ASSIGNMENT@+ -- An assignment.+ | CWWTShortAnswerQuestion+ -- ^ @SHORT_ANSWER_QUESTION@+ -- A short answer question.+ | CWWTMultipleChoiceQuestion+ -- ^ @MULTIPLE_CHOICE_QUESTION@+ -- A multiple-choice question.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable CourseWorkWorkType++instance FromHttpApiData CourseWorkWorkType where+ parseQueryParam = \case+ "COURSE_WORK_TYPE_UNSPECIFIED" -> Right CWWTCourseWorkTypeUnspecified+ "ASSIGNMENT" -> Right CWWTAssignment+ "SHORT_ANSWER_QUESTION" -> Right CWWTShortAnswerQuestion+ "MULTIPLE_CHOICE_QUESTION" -> Right CWWTMultipleChoiceQuestion+ x -> Left ("Unable to parse CourseWorkWorkType from: " <> x)++instance ToHttpApiData CourseWorkWorkType where+ toQueryParam = \case+ CWWTCourseWorkTypeUnspecified -> "COURSE_WORK_TYPE_UNSPECIFIED"+ CWWTAssignment -> "ASSIGNMENT"+ CWWTShortAnswerQuestion -> "SHORT_ANSWER_QUESTION"+ CWWTMultipleChoiceQuestion -> "MULTIPLE_CHOICE_QUESTION"++instance FromJSON CourseWorkWorkType where+ parseJSON = parseJSONText "CourseWorkWorkType"++instance ToJSON CourseWorkWorkType where+ toJSON = toJSONText++-- | Mode of the coursework describing whether it will be assigned to all+-- students or specified individual students.+data ModifyCourseWorkAssigneesRequestAssigneeMode+ = AssigneeModeUnspecified+ -- ^ @ASSIGNEE_MODE_UNSPECIFIED@+ -- No mode specified. This is never returned.+ | AllStudents+ -- ^ @ALL_STUDENTS@+ -- All students can see the item. This is the default state.+ | IndividualStudents+ -- ^ @INDIVIDUAL_STUDENTS@+ -- A subset of the students can see the item.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable ModifyCourseWorkAssigneesRequestAssigneeMode++instance FromHttpApiData ModifyCourseWorkAssigneesRequestAssigneeMode where+ parseQueryParam = \case+ "ASSIGNEE_MODE_UNSPECIFIED" -> Right AssigneeModeUnspecified+ "ALL_STUDENTS" -> Right AllStudents+ "INDIVIDUAL_STUDENTS" -> Right IndividualStudents+ x -> Left ("Unable to parse ModifyCourseWorkAssigneesRequestAssigneeMode from: " <> x)++instance ToHttpApiData ModifyCourseWorkAssigneesRequestAssigneeMode where+ toQueryParam = \case+ AssigneeModeUnspecified -> "ASSIGNEE_MODE_UNSPECIFIED"+ AllStudents -> "ALL_STUDENTS"+ IndividualStudents -> "INDIVIDUAL_STUDENTS"++instance FromJSON ModifyCourseWorkAssigneesRequestAssigneeMode where+ parseJSON = parseJSONText "ModifyCourseWorkAssigneesRequestAssigneeMode"++instance ToJSON ModifyCourseWorkAssigneesRequestAssigneeMode where+ toJSON = toJSONText++-- | The state that this invitation is in.+data GuardianInvitationState+ = GuardianInvitationStateUnspecified+ -- ^ @GUARDIAN_INVITATION_STATE_UNSPECIFIED@+ -- Should never be returned.+ | Pending+ -- ^ @PENDING@+ -- The invitation is active and awaiting a response.+ | Complete+ -- ^ @COMPLETE@+ -- The invitation is no longer active. It may have been accepted, declined,+ -- withdrawn or it may have expired.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable GuardianInvitationState++instance FromHttpApiData GuardianInvitationState where+ parseQueryParam = \case+ "GUARDIAN_INVITATION_STATE_UNSPECIFIED" -> Right GuardianInvitationStateUnspecified+ "PENDING" -> Right Pending+ "COMPLETE" -> Right Complete+ x -> Left ("Unable to parse GuardianInvitationState from: " <> x)++instance ToHttpApiData GuardianInvitationState where+ toQueryParam = \case+ GuardianInvitationStateUnspecified -> "GUARDIAN_INVITATION_STATE_UNSPECIFIED"+ Pending -> "PENDING"+ Complete -> "COMPLETE"++instance FromJSON GuardianInvitationState where+ parseJSON = parseJSONText "GuardianInvitationState"++instance ToJSON GuardianInvitationState where+ toJSON = toJSONText++-- | Mechanism by which students access the Drive item.+data SharedDriveFileShareMode+ = UnknownShareMode+ -- ^ @UNKNOWN_SHARE_MODE@+ -- No sharing mode specified. This should never be returned.+ | View+ -- ^ @VIEW@+ -- Students can view the shared file.+ | Edit+ -- ^ @EDIT@+ -- Students can edit the shared file.+ | StudentCopy+ -- ^ @STUDENT_COPY@+ -- Students have a personal copy of the shared file.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable SharedDriveFileShareMode++instance FromHttpApiData SharedDriveFileShareMode where+ parseQueryParam = \case+ "UNKNOWN_SHARE_MODE" -> Right UnknownShareMode+ "VIEW" -> Right View+ "EDIT" -> Right Edit+ "STUDENT_COPY" -> Right StudentCopy+ x -> Left ("Unable to parse SharedDriveFileShareMode from: " <> x)++instance ToHttpApiData SharedDriveFileShareMode where+ toQueryParam = \case+ UnknownShareMode -> "UNKNOWN_SHARE_MODE"+ View -> "VIEW"+ Edit -> "EDIT"+ StudentCopy -> "STUDENT_COPY"++instance FromJSON SharedDriveFileShareMode where+ parseJSON = parseJSONText "SharedDriveFileShareMode"++instance ToJSON SharedDriveFileShareMode where+ toJSON = toJSONText++-- | Mode of the announcement describing whether it will be accessible by all+-- students or specified individual students.+data ModifyAnnouncementAssigneesRequestAssigneeMode+ = MAARAMAssigneeModeUnspecified+ -- ^ @ASSIGNEE_MODE_UNSPECIFIED@+ -- No mode specified. This is never returned.+ | MAARAMAllStudents+ -- ^ @ALL_STUDENTS@+ -- All students can see the item. This is the default state.+ | MAARAMIndividualStudents+ -- ^ @INDIVIDUAL_STUDENTS@+ -- A subset of the students can see the item.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable ModifyAnnouncementAssigneesRequestAssigneeMode++instance FromHttpApiData ModifyAnnouncementAssigneesRequestAssigneeMode where+ parseQueryParam = \case+ "ASSIGNEE_MODE_UNSPECIFIED" -> Right MAARAMAssigneeModeUnspecified+ "ALL_STUDENTS" -> Right MAARAMAllStudents+ "INDIVIDUAL_STUDENTS" -> Right MAARAMIndividualStudents+ x -> Left ("Unable to parse ModifyAnnouncementAssigneesRequestAssigneeMode from: " <> x)++instance ToHttpApiData ModifyAnnouncementAssigneesRequestAssigneeMode where+ toQueryParam = \case+ MAARAMAssigneeModeUnspecified -> "ASSIGNEE_MODE_UNSPECIFIED"+ MAARAMAllStudents -> "ALL_STUDENTS"+ MAARAMIndividualStudents -> "INDIVIDUAL_STUDENTS"++instance FromJSON ModifyAnnouncementAssigneesRequestAssigneeMode where+ parseJSON = parseJSONText "ModifyAnnouncementAssigneesRequestAssigneeMode"++instance ToJSON ModifyAnnouncementAssigneesRequestAssigneeMode where+ toJSON = toJSONText++-- | Assignee mode of the announcement. If unspecified, the default value is+-- \`ALL_STUDENTS\`.+data AnnouncementAssigneeMode+ = AAMAssigneeModeUnspecified+ -- ^ @ASSIGNEE_MODE_UNSPECIFIED@+ -- No mode specified. This is never returned.+ | AAMAllStudents+ -- ^ @ALL_STUDENTS@+ -- All students can see the item. This is the default state.+ | AAMIndividualStudents+ -- ^ @INDIVIDUAL_STUDENTS@+ -- A subset of the students can see the item.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable AnnouncementAssigneeMode++instance FromHttpApiData AnnouncementAssigneeMode where+ parseQueryParam = \case+ "ASSIGNEE_MODE_UNSPECIFIED" -> Right AAMAssigneeModeUnspecified+ "ALL_STUDENTS" -> Right AAMAllStudents+ "INDIVIDUAL_STUDENTS" -> Right AAMIndividualStudents+ x -> Left ("Unable to parse AnnouncementAssigneeMode from: " <> x)++instance ToHttpApiData AnnouncementAssigneeMode where+ toQueryParam = \case+ AAMAssigneeModeUnspecified -> "ASSIGNEE_MODE_UNSPECIFIED"+ AAMAllStudents -> "ALL_STUDENTS"+ AAMIndividualStudents -> "INDIVIDUAL_STUDENTS"++instance FromJSON AnnouncementAssigneeMode where+ parseJSON = parseJSONText "AnnouncementAssigneeMode"++instance ToJSON AnnouncementAssigneeMode where+ toJSON = toJSONText++-- | Status of this course work. If unspecified, the default state is+-- \`DRAFT\`.+data CourseWorkState+ = CourseWorkStateUnspecified+ -- ^ @COURSE_WORK_STATE_UNSPECIFIED@+ -- No state specified. This is never returned.+ | Published+ -- ^ @PUBLISHED@+ -- Status for work that has been published. This is the default state.+ | Draft+ -- ^ @DRAFT@+ -- Status for work that is not yet published. Work in this state is visible+ -- only to course teachers and domain administrators.+ | Deleted+ -- ^ @DELETED@+ -- Status for work that was published but is now deleted. Work in this+ -- state is visible only to course teachers and domain administrators. Work+ -- in this state is deleted after some time.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable CourseWorkState++instance FromHttpApiData CourseWorkState where+ parseQueryParam = \case+ "COURSE_WORK_STATE_UNSPECIFIED" -> Right CourseWorkStateUnspecified+ "PUBLISHED" -> Right Published+ "DRAFT" -> Right Draft+ "DELETED" -> Right Deleted+ x -> Left ("Unable to parse CourseWorkState from: " <> x)++instance ToHttpApiData CourseWorkState where+ toQueryParam = \case+ CourseWorkStateUnspecified -> "COURSE_WORK_STATE_UNSPECIFIED"+ Published -> "PUBLISHED"+ Draft -> "DRAFT"+ Deleted -> "DELETED"++instance FromJSON CourseWorkState where+ parseJSON = parseJSONText "CourseWorkState"++instance ToJSON CourseWorkState where+ toJSON = toJSONText++-- | State of this submission. Read-only.+data StudentSubmissionState+ = SSSSubmissionStateUnspecified+ -- ^ @SUBMISSION_STATE_UNSPECIFIED@+ -- No state specified. This should never be returned.+ | SSSNew+ -- ^ @NEW@+ -- The student has never accessed this submission. Attachments are not+ -- returned and timestamps is not set.+ | SSSCreated+ -- ^ @CREATED@+ -- Has been created.+ | SSSTurnedIn+ -- ^ @TURNED_IN@+ -- Has been turned in to the teacher.+ | SSSReturned+ -- ^ @RETURNED@+ -- Has been returned to the student.+ | SSSReclaimedByStudent+ -- ^ @RECLAIMED_BY_STUDENT@+ -- Student chose to \"unsubmit\" the assignment.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable StudentSubmissionState++instance FromHttpApiData StudentSubmissionState where+ parseQueryParam = \case+ "SUBMISSION_STATE_UNSPECIFIED" -> Right SSSSubmissionStateUnspecified+ "NEW" -> Right SSSNew+ "CREATED" -> Right SSSCreated+ "TURNED_IN" -> Right SSSTurnedIn+ "RETURNED" -> Right SSSReturned+ "RECLAIMED_BY_STUDENT" -> Right SSSReclaimedByStudent+ x -> Left ("Unable to parse StudentSubmissionState from: " <> x)++instance ToHttpApiData StudentSubmissionState where+ toQueryParam = \case+ SSSSubmissionStateUnspecified -> "SUBMISSION_STATE_UNSPECIFIED"+ SSSNew -> "NEW"+ SSSCreated -> "CREATED"+ SSSTurnedIn -> "TURNED_IN"+ SSSReturned -> "RETURNED"+ SSSReclaimedByStudent -> "RECLAIMED_BY_STUDENT"++instance FromJSON StudentSubmissionState where+ parseJSON = parseJSONText "StudentSubmissionState"++instance ToJSON StudentSubmissionState where+ toJSON = toJSONText++-- | Status of this announcement. If unspecified, the default state is+-- \`DRAFT\`.+data AnnouncementState+ = ASAnnouncementStateUnspecified+ -- ^ @ANNOUNCEMENT_STATE_UNSPECIFIED@+ -- No state specified. This is never returned.+ | ASPublished+ -- ^ @PUBLISHED@+ -- Status for announcement that has been published. This is the default+ -- state.+ | ASDraft+ -- ^ @DRAFT@+ -- Status for an announcement that is not yet published. Announcement in+ -- this state is visible only to course teachers and domain administrators.+ | ASDeleted+ -- ^ @DELETED@+ -- Status for announcement that was published but is now deleted.+ -- Announcement in this state is visible only to course teachers and domain+ -- administrators. Announcement in this state is deleted after some time.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable AnnouncementState++instance FromHttpApiData AnnouncementState where+ parseQueryParam = \case+ "ANNOUNCEMENT_STATE_UNSPECIFIED" -> Right ASAnnouncementStateUnspecified+ "PUBLISHED" -> Right ASPublished+ "DRAFT" -> Right ASDraft+ "DELETED" -> Right ASDeleted+ x -> Left ("Unable to parse AnnouncementState from: " <> x)++instance ToHttpApiData AnnouncementState where+ toQueryParam = \case+ ASAnnouncementStateUnspecified -> "ANNOUNCEMENT_STATE_UNSPECIFIED"+ ASPublished -> "PUBLISHED"+ ASDraft -> "DRAFT"+ ASDeleted -> "DELETED"++instance FromJSON AnnouncementState where+ parseJSON = parseJSONText "AnnouncementState"++instance ToJSON AnnouncementState where+ toJSON = toJSONText++-- | V1 error format.+data Xgafv+ = X1+ -- ^ @1@+ -- v1 error format+ | X2+ -- ^ @2@+ -- v2 error format+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable Xgafv++instance FromHttpApiData Xgafv where+ parseQueryParam = \case+ "1" -> Right X1+ "2" -> Right X2+ x -> Left ("Unable to parse Xgafv from: " <> x)++instance ToHttpApiData Xgafv where+ toQueryParam = \case+ X1 -> "1"+ X2 -> "2"++instance FromJSON Xgafv where+ parseJSON = parseJSONText "Xgafv"++instance ToJSON Xgafv where+ toJSON = toJSONText++-- | Role to invite the user to have. Must not be+-- \`COURSE_ROLE_UNSPECIFIED\`.+data InvitationRole+ = IRCourseRoleUnspecified+ -- ^ @COURSE_ROLE_UNSPECIFIED@+ -- No course role.+ | IRStudent+ -- ^ @STUDENT@+ -- Student in the course.+ | IRTeacher+ -- ^ @TEACHER@+ -- Teacher of the course.+ | IROwner+ -- ^ @OWNER@+ -- Owner of the course.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable InvitationRole++instance FromHttpApiData InvitationRole where+ parseQueryParam = \case+ "COURSE_ROLE_UNSPECIFIED" -> Right IRCourseRoleUnspecified+ "STUDENT" -> Right IRStudent+ "TEACHER" -> Right IRTeacher+ "OWNER" -> Right IROwner+ x -> Left ("Unable to parse InvitationRole from: " <> x)++instance ToHttpApiData InvitationRole where+ toQueryParam = \case+ IRCourseRoleUnspecified -> "COURSE_ROLE_UNSPECIFIED"+ IRStudent -> "STUDENT"+ IRTeacher -> "TEACHER"+ IROwner -> "OWNER"++instance FromJSON InvitationRole where+ parseJSON = parseJSONText "InvitationRole"++instance ToJSON InvitationRole where+ toJSON = toJSONText++-- | Type of course work this submission is for. Read-only.+data StudentSubmissionCourseWorkType+ = SSCWTCourseWorkTypeUnspecified+ -- ^ @COURSE_WORK_TYPE_UNSPECIFIED@+ -- No work type specified. This is never returned.+ | SSCWTAssignment+ -- ^ @ASSIGNMENT@+ -- An assignment.+ | SSCWTShortAnswerQuestion+ -- ^ @SHORT_ANSWER_QUESTION@+ -- A short answer question.+ | SSCWTMultipleChoiceQuestion+ -- ^ @MULTIPLE_CHOICE_QUESTION@+ -- A multiple-choice question.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable StudentSubmissionCourseWorkType++instance FromHttpApiData StudentSubmissionCourseWorkType where+ parseQueryParam = \case+ "COURSE_WORK_TYPE_UNSPECIFIED" -> Right SSCWTCourseWorkTypeUnspecified+ "ASSIGNMENT" -> Right SSCWTAssignment+ "SHORT_ANSWER_QUESTION" -> Right SSCWTShortAnswerQuestion+ "MULTIPLE_CHOICE_QUESTION" -> Right SSCWTMultipleChoiceQuestion+ x -> Left ("Unable to parse StudentSubmissionCourseWorkType from: " <> x)++instance ToHttpApiData StudentSubmissionCourseWorkType where+ toQueryParam = \case+ SSCWTCourseWorkTypeUnspecified -> "COURSE_WORK_TYPE_UNSPECIFIED"+ SSCWTAssignment -> "ASSIGNMENT"+ SSCWTShortAnswerQuestion -> "SHORT_ANSWER_QUESTION"+ SSCWTMultipleChoiceQuestion -> "MULTIPLE_CHOICE_QUESTION"++instance FromJSON StudentSubmissionCourseWorkType where+ parseJSON = parseJSONText "StudentSubmissionCourseWorkType"++instance ToJSON StudentSubmissionCourseWorkType where+ toJSON = toJSONText++-- | The type of feed.+data FeedFeedType+ = FeedTypeUnspecified+ -- ^ @FEED_TYPE_UNSPECIFIED@+ -- Should never be returned or provided.+ | DomainRosterChanges+ -- ^ @DOMAIN_ROSTER_CHANGES@+ -- All roster changes for a particular domain. Notifications will be+ -- generated whenever a user joins or leaves a course. No notifications+ -- will be generated when an invitation is created or deleted, but+ -- notifications will be generated when a user joins a course by accepting+ -- an invitation.+ | CourseRosterChanges+ -- ^ @COURSE_ROSTER_CHANGES@+ -- All roster changes for a particular course. Notifications will be+ -- generated whenever a user joins or leaves a course. No notifications+ -- will be generated when an invitation is created or deleted, but+ -- notifications will be generated when a user joins a course by accepting+ -- an invitation.+ | CourseWorkChanges+ -- ^ @COURSE_WORK_CHANGES@+ -- All course work activity for a particular course. Notifications will be+ -- generated when a CourseWork or StudentSubmission object is created or+ -- modified. No notification will be generated when a StudentSubmission+ -- object is created in connection with the creation or modification of its+ -- parent CourseWork object (but a notification will be generated for that+ -- CourseWork object\'s creation or modification).+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable FeedFeedType++instance FromHttpApiData FeedFeedType where+ parseQueryParam = \case+ "FEED_TYPE_UNSPECIFIED" -> Right FeedTypeUnspecified+ "DOMAIN_ROSTER_CHANGES" -> Right DomainRosterChanges+ "COURSE_ROSTER_CHANGES" -> Right CourseRosterChanges+ "COURSE_WORK_CHANGES" -> Right CourseWorkChanges+ x -> Left ("Unable to parse FeedFeedType from: " <> x)++instance ToHttpApiData FeedFeedType where+ toQueryParam = \case+ FeedTypeUnspecified -> "FEED_TYPE_UNSPECIFIED"+ DomainRosterChanges -> "DOMAIN_ROSTER_CHANGES"+ CourseRosterChanges -> "COURSE_ROSTER_CHANGES"+ CourseWorkChanges -> "COURSE_WORK_CHANGES"++instance FromJSON FeedFeedType where+ parseJSON = parseJSONText "FeedFeedType"++instance ToJSON FeedFeedType where+ toJSON = toJSONText++-- | Permission value.+data GlobalPermissionPermission+ = PermissionUnspecified+ -- ^ @PERMISSION_UNSPECIFIED@+ -- No permission is specified. This is not returned and is not a valid+ -- value.+ | CreateCourse+ -- ^ @CREATE_COURSE@+ -- User is permitted to create a course.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable GlobalPermissionPermission++instance FromHttpApiData GlobalPermissionPermission where+ parseQueryParam = \case+ "PERMISSION_UNSPECIFIED" -> Right PermissionUnspecified+ "CREATE_COURSE" -> Right CreateCourse+ x -> Left ("Unable to parse GlobalPermissionPermission from: " <> x)++instance ToHttpApiData GlobalPermissionPermission where+ toQueryParam = \case+ PermissionUnspecified -> "PERMISSION_UNSPECIFIED"+ CreateCourse -> "CREATE_COURSE"++instance FromJSON GlobalPermissionPermission where+ parseJSON = parseJSONText "GlobalPermissionPermission"++instance ToJSON GlobalPermissionPermission where+ toJSON = toJSONText++-- | Assignee mode of the coursework. If unspecified, the default value is+-- \`ALL_STUDENTS\`.+data CourseWorkAssigneeMode+ = CWAMAssigneeModeUnspecified+ -- ^ @ASSIGNEE_MODE_UNSPECIFIED@+ -- No mode specified. This is never returned.+ | CWAMAllStudents+ -- ^ @ALL_STUDENTS@+ -- All students can see the item. This is the default state.+ | CWAMIndividualStudents+ -- ^ @INDIVIDUAL_STUDENTS@+ -- A subset of the students can see the item.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable CourseWorkAssigneeMode++instance FromHttpApiData CourseWorkAssigneeMode where+ parseQueryParam = \case+ "ASSIGNEE_MODE_UNSPECIFIED" -> Right CWAMAssigneeModeUnspecified+ "ALL_STUDENTS" -> Right CWAMAllStudents+ "INDIVIDUAL_STUDENTS" -> Right CWAMIndividualStudents+ x -> Left ("Unable to parse CourseWorkAssigneeMode from: " <> x)++instance ToHttpApiData CourseWorkAssigneeMode where+ toQueryParam = \case+ CWAMAssigneeModeUnspecified -> "ASSIGNEE_MODE_UNSPECIFIED"+ CWAMAllStudents -> "ALL_STUDENTS"+ CWAMIndividualStudents -> "INDIVIDUAL_STUDENTS"++instance FromJSON CourseWorkAssigneeMode where+ parseJSON = parseJSONText "CourseWorkAssigneeMode"++instance ToJSON CourseWorkAssigneeMode where+ toJSON = toJSONText++-- | Setting to determine when students are allowed to modify submissions. If+-- unspecified, the default value is \`MODIFIABLE_UNTIL_TURNED_IN\`.+data CourseWorkSubmissionModificationMode+ = SubmissionModificationModeUnspecified+ -- ^ @SUBMISSION_MODIFICATION_MODE_UNSPECIFIED@+ -- No modification mode specified. This is never returned.+ | ModifiableUntilTurnedIn+ -- ^ @MODIFIABLE_UNTIL_TURNED_IN@+ -- Submissions can be modified before being turned in.+ | Modifiable+ -- ^ @MODIFIABLE@+ -- Submissions can be modified at any time.+ deriving (Eq, Ord, Enum, Read, Show, Data, Typeable, Generic)++instance Hashable CourseWorkSubmissionModificationMode++instance FromHttpApiData CourseWorkSubmissionModificationMode where+ parseQueryParam = \case+ "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED" -> Right SubmissionModificationModeUnspecified+ "MODIFIABLE_UNTIL_TURNED_IN" -> Right ModifiableUntilTurnedIn+ "MODIFIABLE" -> Right Modifiable+ x -> Left ("Unable to parse CourseWorkSubmissionModificationMode from: " <> x)++instance ToHttpApiData CourseWorkSubmissionModificationMode where+ toQueryParam = \case+ SubmissionModificationModeUnspecified -> "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED"+ ModifiableUntilTurnedIn -> "MODIFIABLE_UNTIL_TURNED_IN"+ Modifiable -> "MODIFIABLE"++instance FromJSON CourseWorkSubmissionModificationMode where+ parseJSON = parseJSONText "CourseWorkSubmissionModificationMode"++instance ToJSON CourseWorkSubmissionModificationMode where+ toJSON = toJSONText
gen/Network/Google/Resource/Classroom/Courses/Aliases/Create.hs view
@@ -23,7 +23,10 @@ -- Creates an alias for a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted -- to create the alias or for access errors. * \`NOT_FOUND\` if the course--- does not exist. * \`ALREADY_EXISTS\` if the alias already exists.+-- does not exist. * \`ALREADY_EXISTS\` if the alias already exists. *+-- \`FAILED_PRECONDITION\` if the alias requested does not make sense for+-- the requesting user or course (for example, if a user not in a domain+-- attempts to access a domain-scoped alias). -- -- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.aliases.create@. module Network.Google.Resource.Classroom.Courses.Aliases.Create@@ -38,12 +41,10 @@ -- * Request Lenses , cacXgafv , cacUploadProtocol- , cacPp , cacCourseId , cacAccessToken , cacUploadType , cacPayload- , cacBearerToken , cacCallback ) where @@ -57,32 +58,31 @@ "courses" :> Capture "courseId" Text :> "aliases" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] CourseAlias :>- Post '[JSON] CourseAlias+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] CourseAlias :>+ Post '[JSON] CourseAlias -- | Creates an alias for a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted -- to create the alias or for access errors. * \`NOT_FOUND\` if the course--- does not exist. * \`ALREADY_EXISTS\` if the alias already exists.+-- does not exist. * \`ALREADY_EXISTS\` if the alias already exists. *+-- \`FAILED_PRECONDITION\` if the alias requested does not make sense for+-- the requesting user or course (for example, if a user not in a domain+-- attempts to access a domain-scoped alias). -- -- /See:/ 'coursesAliasesCreate' smart constructor. data CoursesAliasesCreate = CoursesAliasesCreate'- { _cacXgafv :: !(Maybe Text)+ { _cacXgafv :: !(Maybe Xgafv) , _cacUploadProtocol :: !(Maybe Text)- , _cacPp :: !Bool , _cacCourseId :: !Text , _cacAccessToken :: !(Maybe Text) , _cacUploadType :: !(Maybe Text) , _cacPayload :: !CourseAlias- , _cacBearerToken :: !(Maybe Text) , _cacCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -94,8 +94,6 @@ -- -- * 'cacUploadProtocol' ----- * 'cacPp'--- -- * 'cacCourseId' -- -- * 'cacAccessToken'@@ -104,8 +102,6 @@ -- -- * 'cacPayload' ----- * 'cacBearerToken'--- -- * 'cacCallback' coursesAliasesCreate :: Text -- ^ 'cacCourseId'@@ -115,17 +111,15 @@ CoursesAliasesCreate' { _cacXgafv = Nothing , _cacUploadProtocol = Nothing- , _cacPp = True , _cacCourseId = pCacCourseId_ , _cacAccessToken = Nothing , _cacUploadType = Nothing , _cacPayload = pCacPayload_- , _cacBearerToken = Nothing , _cacCallback = Nothing } -- | V1 error format.-cacXgafv :: Lens' CoursesAliasesCreate (Maybe Text)+cacXgafv :: Lens' CoursesAliasesCreate (Maybe Xgafv) cacXgafv = lens _cacXgafv (\ s a -> s{_cacXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -134,10 +128,6 @@ = lens _cacUploadProtocol (\ s a -> s{_cacUploadProtocol = a}) --- | Pretty-print response.-cacPp :: Lens' CoursesAliasesCreate Bool-cacPp = lens _cacPp (\ s a -> s{_cacPp = a})- -- | Identifier of the course to alias. This identifier can be either the -- Classroom-assigned identifier or an alias. cacCourseId :: Lens' CoursesAliasesCreate Text@@ -161,12 +151,6 @@ cacPayload = lens _cacPayload (\ s a -> s{_cacPayload = a}) --- | OAuth bearer token.-cacBearerToken :: Lens' CoursesAliasesCreate (Maybe Text)-cacBearerToken- = lens _cacBearerToken- (\ s a -> s{_cacBearerToken = a})- -- | JSONP cacCallback :: Lens' CoursesAliasesCreate (Maybe Text) cacCallback@@ -178,10 +162,8 @@ '["https://www.googleapis.com/auth/classroom.courses"] requestClient CoursesAliasesCreate'{..} = go _cacCourseId _cacXgafv _cacUploadProtocol- (Just _cacPp) _cacAccessToken _cacUploadType- _cacBearerToken _cacCallback (Just AltJSON) _cacPayload
gen/Network/Google/Resource/Classroom/Courses/Aliases/Delete.hs view
@@ -23,7 +23,9 @@ -- Deletes an alias of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted -- to remove the alias or for access errors. * \`NOT_FOUND\` if the alias--- does not exist.+-- does not exist. * \`FAILED_PRECONDITION\` if the alias requested does+-- not make sense for the requesting user or course (for example, if a user+-- not in a domain attempts to delete a domain-scoped alias). -- -- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.aliases.delete@. module Network.Google.Resource.Classroom.Courses.Aliases.Delete@@ -38,12 +40,10 @@ -- * Request Lenses , cadXgafv , cadUploadProtocol- , cadPp , cadCourseId , cadAccessToken , cadUploadType , cadAlias- , cadBearerToken , cadCallback ) where @@ -58,30 +58,28 @@ Capture "courseId" Text :> "aliases" :> Capture "alias" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes an alias of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted -- to remove the alias or for access errors. * \`NOT_FOUND\` if the alias--- does not exist.+-- does not exist. * \`FAILED_PRECONDITION\` if the alias requested does+-- not make sense for the requesting user or course (for example, if a user+-- not in a domain attempts to delete a domain-scoped alias). -- -- /See:/ 'coursesAliasesDelete' smart constructor. data CoursesAliasesDelete = CoursesAliasesDelete'- { _cadXgafv :: !(Maybe Text)+ { _cadXgafv :: !(Maybe Xgafv) , _cadUploadProtocol :: !(Maybe Text)- , _cadPp :: !Bool , _cadCourseId :: !Text , _cadAccessToken :: !(Maybe Text) , _cadUploadType :: !(Maybe Text) , _cadAlias :: !Text- , _cadBearerToken :: !(Maybe Text) , _cadCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -93,8 +91,6 @@ -- -- * 'cadUploadProtocol' ----- * 'cadPp'--- -- * 'cadCourseId' -- -- * 'cadAccessToken'@@ -103,8 +99,6 @@ -- -- * 'cadAlias' ----- * 'cadBearerToken'--- -- * 'cadCallback' coursesAliasesDelete :: Text -- ^ 'cadCourseId'@@ -114,17 +108,15 @@ CoursesAliasesDelete' { _cadXgafv = Nothing , _cadUploadProtocol = Nothing- , _cadPp = True , _cadCourseId = pCadCourseId_ , _cadAccessToken = Nothing , _cadUploadType = Nothing , _cadAlias = pCadAlias_- , _cadBearerToken = Nothing , _cadCallback = Nothing } -- | V1 error format.-cadXgafv :: Lens' CoursesAliasesDelete (Maybe Text)+cadXgafv :: Lens' CoursesAliasesDelete (Maybe Xgafv) cadXgafv = lens _cadXgafv (\ s a -> s{_cadXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -133,10 +125,6 @@ = lens _cadUploadProtocol (\ s a -> s{_cadUploadProtocol = a}) --- | Pretty-print response.-cadPp :: Lens' CoursesAliasesDelete Bool-cadPp = lens _cadPp (\ s a -> s{_cadPp = a})- -- | Identifier of the course whose alias should be deleted. This identifier -- can be either the Classroom-assigned identifier or an alias. cadCourseId :: Lens' CoursesAliasesDelete Text@@ -159,12 +147,6 @@ cadAlias :: Lens' CoursesAliasesDelete Text cadAlias = lens _cadAlias (\ s a -> s{_cadAlias = a}) --- | OAuth bearer token.-cadBearerToken :: Lens' CoursesAliasesDelete (Maybe Text)-cadBearerToken- = lens _cadBearerToken- (\ s a -> s{_cadBearerToken = a})- -- | JSONP cadCallback :: Lens' CoursesAliasesDelete (Maybe Text) cadCallback@@ -177,10 +159,8 @@ requestClient CoursesAliasesDelete'{..} = go _cadCourseId _cadAlias _cadXgafv _cadUploadProtocol- (Just _cadPp) _cadAccessToken _cadUploadType- _cadBearerToken _cadCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/Aliases/List.hs view
@@ -36,16 +36,14 @@ , CoursesAliasesList -- * Request Lenses- , calXgafv- , calUploadProtocol- , calPp- , calCourseId- , calAccessToken- , calUploadType- , calBearerToken- , calPageToken- , calPageSize- , calCallback+ , calaXgafv+ , calaUploadProtocol+ , calaCourseId+ , calaAccessToken+ , calaUploadType+ , calaPageToken+ , calaPageSize+ , calaCallback ) where import Network.Google.Classroom.Types@@ -58,17 +56,15 @@ "courses" :> Capture "courseId" Text :> "aliases" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListCourseAliasesResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListCourseAliasesResponse -- | Returns a list of aliases for a course. This method returns the -- following error codes: * \`PERMISSION_DENIED\` if the requesting user is@@ -77,115 +73,99 @@ -- -- /See:/ 'coursesAliasesList' smart constructor. data CoursesAliasesList = CoursesAliasesList'- { _calXgafv :: !(Maybe Text)- , _calUploadProtocol :: !(Maybe Text)- , _calPp :: !Bool- , _calCourseId :: !Text- , _calAccessToken :: !(Maybe Text)- , _calUploadType :: !(Maybe Text)- , _calBearerToken :: !(Maybe Text)- , _calPageToken :: !(Maybe Text)- , _calPageSize :: !(Maybe (Textual Int32))- , _calCallback :: !(Maybe Text)+ { _calaXgafv :: !(Maybe Xgafv)+ , _calaUploadProtocol :: !(Maybe Text)+ , _calaCourseId :: !Text+ , _calaAccessToken :: !(Maybe Text)+ , _calaUploadType :: !(Maybe Text)+ , _calaPageToken :: !(Maybe Text)+ , _calaPageSize :: !(Maybe (Textual Int32))+ , _calaCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'CoursesAliasesList' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: ----- * 'calXgafv'------ * 'calUploadProtocol'------ * 'calPp'+-- * 'calaXgafv' ----- * 'calCourseId'+-- * 'calaUploadProtocol' ----- * 'calAccessToken'+-- * 'calaCourseId' ----- * 'calUploadType'+-- * 'calaAccessToken' ----- * 'calBearerToken'+-- * 'calaUploadType' ----- * 'calPageToken'+-- * 'calaPageToken' ----- * 'calPageSize'+-- * 'calaPageSize' ----- * 'calCallback'+-- * 'calaCallback' coursesAliasesList- :: Text -- ^ 'calCourseId'+ :: Text -- ^ 'calaCourseId' -> CoursesAliasesList-coursesAliasesList pCalCourseId_ =+coursesAliasesList pCalaCourseId_ = CoursesAliasesList'- { _calXgafv = Nothing- , _calUploadProtocol = Nothing- , _calPp = True- , _calCourseId = pCalCourseId_- , _calAccessToken = Nothing- , _calUploadType = Nothing- , _calBearerToken = Nothing- , _calPageToken = Nothing- , _calPageSize = Nothing- , _calCallback = Nothing+ { _calaXgafv = Nothing+ , _calaUploadProtocol = Nothing+ , _calaCourseId = pCalaCourseId_+ , _calaAccessToken = Nothing+ , _calaUploadType = Nothing+ , _calaPageToken = Nothing+ , _calaPageSize = Nothing+ , _calaCallback = Nothing } -- | V1 error format.-calXgafv :: Lens' CoursesAliasesList (Maybe Text)-calXgafv = lens _calXgafv (\ s a -> s{_calXgafv = a})+calaXgafv :: Lens' CoursesAliasesList (Maybe Xgafv)+calaXgafv+ = lens _calaXgafv (\ s a -> s{_calaXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").-calUploadProtocol :: Lens' CoursesAliasesList (Maybe Text)-calUploadProtocol- = lens _calUploadProtocol- (\ s a -> s{_calUploadProtocol = a})---- | Pretty-print response.-calPp :: Lens' CoursesAliasesList Bool-calPp = lens _calPp (\ s a -> s{_calPp = a})+calaUploadProtocol :: Lens' CoursesAliasesList (Maybe Text)+calaUploadProtocol+ = lens _calaUploadProtocol+ (\ s a -> s{_calaUploadProtocol = a}) -- | The identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias.-calCourseId :: Lens' CoursesAliasesList Text-calCourseId- = lens _calCourseId (\ s a -> s{_calCourseId = a})+calaCourseId :: Lens' CoursesAliasesList Text+calaCourseId+ = lens _calaCourseId (\ s a -> s{_calaCourseId = a}) -- | OAuth access token.-calAccessToken :: Lens' CoursesAliasesList (Maybe Text)-calAccessToken- = lens _calAccessToken- (\ s a -> s{_calAccessToken = a})+calaAccessToken :: Lens' CoursesAliasesList (Maybe Text)+calaAccessToken+ = lens _calaAccessToken+ (\ s a -> s{_calaAccessToken = a}) -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").-calUploadType :: Lens' CoursesAliasesList (Maybe Text)-calUploadType- = lens _calUploadType- (\ s a -> s{_calUploadType = a})---- | OAuth bearer token.-calBearerToken :: Lens' CoursesAliasesList (Maybe Text)-calBearerToken- = lens _calBearerToken- (\ s a -> s{_calBearerToken = a})+calaUploadType :: Lens' CoursesAliasesList (Maybe Text)+calaUploadType+ = lens _calaUploadType+ (\ s a -> s{_calaUploadType = a}) -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.-calPageToken :: Lens' CoursesAliasesList (Maybe Text)-calPageToken- = lens _calPageToken (\ s a -> s{_calPageToken = a})+calaPageToken :: Lens' CoursesAliasesList (Maybe Text)+calaPageToken+ = lens _calaPageToken+ (\ s a -> s{_calaPageToken = a}) -- | Maximum number of items to return. Zero or unspecified indicates that -- the server may assign a maximum. The server may return fewer than the -- specified number of results.-calPageSize :: Lens' CoursesAliasesList (Maybe Int32)-calPageSize- = lens _calPageSize (\ s a -> s{_calPageSize = a}) .- mapping _Coerce+calaPageSize :: Lens' CoursesAliasesList (Maybe Int32)+calaPageSize+ = lens _calaPageSize (\ s a -> s{_calaPageSize = a})+ . mapping _Coerce -- | JSONP-calCallback :: Lens' CoursesAliasesList (Maybe Text)-calCallback- = lens _calCallback (\ s a -> s{_calCallback = a})+calaCallback :: Lens' CoursesAliasesList (Maybe Text)+calaCallback+ = lens _calaCallback (\ s a -> s{_calaCallback = a}) instance GoogleRequest CoursesAliasesList where type Rs CoursesAliasesList =@@ -194,14 +174,12 @@ '["https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/classroom.courses.readonly"] requestClient CoursesAliasesList'{..}- = go _calCourseId _calXgafv _calUploadProtocol- (Just _calPp)- _calAccessToken- _calUploadType- _calBearerToken- _calPageToken- _calPageSize- _calCallback+ = go _calaCourseId _calaXgafv _calaUploadProtocol+ _calaAccessToken+ _calaUploadType+ _calaPageToken+ _calaPageSize+ _calaCallback (Just AltJSON) classroomService where go
+ gen/Network/Google/Resource/Classroom/Courses/Announcements/Create.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.Announcements.Create+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates an announcement. This method returns the following error codes:+-- * \`PERMISSION_DENIED\` if the requesting user is not permitted to+-- access the requested course, create announcements in the requested+-- course, share a Drive attachment, or for access errors. *+-- \`INVALID_ARGUMENT\` if the request is malformed. * \`NOT_FOUND\` if the+-- requested course does not exist. * \`FAILED_PRECONDITION\` for the+-- following request error: * AttachmentNotVisible+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.announcements.create@.+module Network.Google.Resource.Classroom.Courses.Announcements.Create+ (+ -- * REST Resource+ CoursesAnnouncementsCreateResource++ -- * Creating a Request+ , coursesAnnouncementsCreate+ , CoursesAnnouncementsCreate++ -- * Request Lenses+ , couXgafv+ , couUploadProtocol+ , couCourseId+ , couAccessToken+ , couUploadType+ , couPayload+ , couCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.announcements.create@ method which the+-- 'CoursesAnnouncementsCreate' request conforms to.+type CoursesAnnouncementsCreateResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "announcements" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Announcement :>+ Post '[JSON] Announcement++-- | Creates an announcement. This method returns the following error codes:+-- * \`PERMISSION_DENIED\` if the requesting user is not permitted to+-- access the requested course, create announcements in the requested+-- course, share a Drive attachment, or for access errors. *+-- \`INVALID_ARGUMENT\` if the request is malformed. * \`NOT_FOUND\` if the+-- requested course does not exist. * \`FAILED_PRECONDITION\` for the+-- following request error: * AttachmentNotVisible+--+-- /See:/ 'coursesAnnouncementsCreate' smart constructor.+data CoursesAnnouncementsCreate = CoursesAnnouncementsCreate'+ { _couXgafv :: !(Maybe Xgafv)+ , _couUploadProtocol :: !(Maybe Text)+ , _couCourseId :: !Text+ , _couAccessToken :: !(Maybe Text)+ , _couUploadType :: !(Maybe Text)+ , _couPayload :: !Announcement+ , _couCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesAnnouncementsCreate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'couXgafv'+--+-- * 'couUploadProtocol'+--+-- * 'couCourseId'+--+-- * 'couAccessToken'+--+-- * 'couUploadType'+--+-- * 'couPayload'+--+-- * 'couCallback'+coursesAnnouncementsCreate+ :: Text -- ^ 'couCourseId'+ -> Announcement -- ^ 'couPayload'+ -> CoursesAnnouncementsCreate+coursesAnnouncementsCreate pCouCourseId_ pCouPayload_ =+ CoursesAnnouncementsCreate'+ { _couXgafv = Nothing+ , _couUploadProtocol = Nothing+ , _couCourseId = pCouCourseId_+ , _couAccessToken = Nothing+ , _couUploadType = Nothing+ , _couPayload = pCouPayload_+ , _couCallback = Nothing+ }++-- | V1 error format.+couXgafv :: Lens' CoursesAnnouncementsCreate (Maybe Xgafv)+couXgafv = lens _couXgafv (\ s a -> s{_couXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+couUploadProtocol :: Lens' CoursesAnnouncementsCreate (Maybe Text)+couUploadProtocol+ = lens _couUploadProtocol+ (\ s a -> s{_couUploadProtocol = a})++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+couCourseId :: Lens' CoursesAnnouncementsCreate Text+couCourseId+ = lens _couCourseId (\ s a -> s{_couCourseId = a})++-- | OAuth access token.+couAccessToken :: Lens' CoursesAnnouncementsCreate (Maybe Text)+couAccessToken+ = lens _couAccessToken+ (\ s a -> s{_couAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+couUploadType :: Lens' CoursesAnnouncementsCreate (Maybe Text)+couUploadType+ = lens _couUploadType+ (\ s a -> s{_couUploadType = a})++-- | Multipart request metadata.+couPayload :: Lens' CoursesAnnouncementsCreate Announcement+couPayload+ = lens _couPayload (\ s a -> s{_couPayload = a})++-- | JSONP+couCallback :: Lens' CoursesAnnouncementsCreate (Maybe Text)+couCallback+ = lens _couCallback (\ s a -> s{_couCallback = a})++instance GoogleRequest CoursesAnnouncementsCreate+ where+ type Rs CoursesAnnouncementsCreate = Announcement+ type Scopes CoursesAnnouncementsCreate =+ '["https://www.googleapis.com/auth/classroom.announcements"]+ requestClient CoursesAnnouncementsCreate'{..}+ = go _couCourseId _couXgafv _couUploadProtocol+ _couAccessToken+ _couUploadType+ _couCallback+ (Just AltJSON)+ _couPayload+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy CoursesAnnouncementsCreateResource)+ mempty
+ gen/Network/Google/Resource/Classroom/Courses/Announcements/Delete.hs view
@@ -0,0 +1,175 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.Announcements.Delete+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes an announcement. This request must be made by the Developer+-- Console project of the [OAuth client+-- ID](https:\/\/support.google.com\/cloud\/answer\/6158849) used to create+-- the corresponding announcement item. This method returns the following+-- error codes: * \`PERMISSION_DENIED\` if the requesting developer project+-- did not create the corresponding announcement, if the requesting user is+-- not permitted to delete the requested course or for access errors. *+-- \`FAILED_PRECONDITION\` if the requested announcement has already been+-- deleted. * \`NOT_FOUND\` if no course exists with the requested ID.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.announcements.delete@.+module Network.Google.Resource.Classroom.Courses.Announcements.Delete+ (+ -- * REST Resource+ CoursesAnnouncementsDeleteResource++ -- * Creating a Request+ , coursesAnnouncementsDelete+ , CoursesAnnouncementsDelete++ -- * Request Lenses+ , cXgafv+ , cUploadProtocol+ , cCourseId+ , cAccessToken+ , cUploadType+ , cId+ , cCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.announcements.delete@ method which the+-- 'CoursesAnnouncementsDelete' request conforms to.+type CoursesAnnouncementsDeleteResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "announcements" :>+ Capture "id" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty++-- | Deletes an announcement. This request must be made by the Developer+-- Console project of the [OAuth client+-- ID](https:\/\/support.google.com\/cloud\/answer\/6158849) used to create+-- the corresponding announcement item. This method returns the following+-- error codes: * \`PERMISSION_DENIED\` if the requesting developer project+-- did not create the corresponding announcement, if the requesting user is+-- not permitted to delete the requested course or for access errors. *+-- \`FAILED_PRECONDITION\` if the requested announcement has already been+-- deleted. * \`NOT_FOUND\` if no course exists with the requested ID.+--+-- /See:/ 'coursesAnnouncementsDelete' smart constructor.+data CoursesAnnouncementsDelete = CoursesAnnouncementsDelete'+ { _cXgafv :: !(Maybe Xgafv)+ , _cUploadProtocol :: !(Maybe Text)+ , _cCourseId :: !Text+ , _cAccessToken :: !(Maybe Text)+ , _cUploadType :: !(Maybe Text)+ , _cId :: !Text+ , _cCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesAnnouncementsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cXgafv'+--+-- * 'cUploadProtocol'+--+-- * 'cCourseId'+--+-- * 'cAccessToken'+--+-- * 'cUploadType'+--+-- * 'cId'+--+-- * 'cCallback'+coursesAnnouncementsDelete+ :: Text -- ^ 'cCourseId'+ -> Text -- ^ 'cId'+ -> CoursesAnnouncementsDelete+coursesAnnouncementsDelete pCCourseId_ pCId_ =+ CoursesAnnouncementsDelete'+ { _cXgafv = Nothing+ , _cUploadProtocol = Nothing+ , _cCourseId = pCCourseId_+ , _cAccessToken = Nothing+ , _cUploadType = Nothing+ , _cId = pCId_+ , _cCallback = Nothing+ }++-- | V1 error format.+cXgafv :: Lens' CoursesAnnouncementsDelete (Maybe Xgafv)+cXgafv = lens _cXgafv (\ s a -> s{_cXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+cUploadProtocol :: Lens' CoursesAnnouncementsDelete (Maybe Text)+cUploadProtocol+ = lens _cUploadProtocol+ (\ s a -> s{_cUploadProtocol = a})++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+cCourseId :: Lens' CoursesAnnouncementsDelete Text+cCourseId+ = lens _cCourseId (\ s a -> s{_cCourseId = a})++-- | OAuth access token.+cAccessToken :: Lens' CoursesAnnouncementsDelete (Maybe Text)+cAccessToken+ = lens _cAccessToken (\ s a -> s{_cAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+cUploadType :: Lens' CoursesAnnouncementsDelete (Maybe Text)+cUploadType+ = lens _cUploadType (\ s a -> s{_cUploadType = a})++-- | Identifier of the announcement to delete. This identifier is a+-- Classroom-assigned identifier.+cId :: Lens' CoursesAnnouncementsDelete Text+cId = lens _cId (\ s a -> s{_cId = a})++-- | JSONP+cCallback :: Lens' CoursesAnnouncementsDelete (Maybe Text)+cCallback+ = lens _cCallback (\ s a -> s{_cCallback = a})++instance GoogleRequest CoursesAnnouncementsDelete+ where+ type Rs CoursesAnnouncementsDelete = Empty+ type Scopes CoursesAnnouncementsDelete =+ '["https://www.googleapis.com/auth/classroom.announcements"]+ requestClient CoursesAnnouncementsDelete'{..}+ = go _cCourseId _cId _cXgafv _cUploadProtocol+ _cAccessToken+ _cUploadType+ _cCallback+ (Just AltJSON)+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy CoursesAnnouncementsDeleteResource)+ mempty
+ gen/Network/Google/Resource/Classroom/Courses/Announcements/Get.hs view
@@ -0,0 +1,168 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.Announcements.Get+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns an announcement. This method returns the following error codes:+-- * \`PERMISSION_DENIED\` if the requesting user is not permitted to+-- access the requested course or announcement, or for access errors. *+-- \`INVALID_ARGUMENT\` if the request is malformed. * \`NOT_FOUND\` if the+-- requested course or announcement does not exist.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.announcements.get@.+module Network.Google.Resource.Classroom.Courses.Announcements.Get+ (+ -- * REST Resource+ CoursesAnnouncementsGetResource++ -- * Creating a Request+ , coursesAnnouncementsGet+ , CoursesAnnouncementsGet++ -- * Request Lenses+ , cagXgafv+ , cagUploadProtocol+ , cagCourseId+ , cagAccessToken+ , cagUploadType+ , cagId+ , cagCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.announcements.get@ method which the+-- 'CoursesAnnouncementsGet' request conforms to.+type CoursesAnnouncementsGetResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "announcements" :>+ Capture "id" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Announcement++-- | Returns an announcement. This method returns the following error codes:+-- * \`PERMISSION_DENIED\` if the requesting user is not permitted to+-- access the requested course or announcement, or for access errors. *+-- \`INVALID_ARGUMENT\` if the request is malformed. * \`NOT_FOUND\` if the+-- requested course or announcement does not exist.+--+-- /See:/ 'coursesAnnouncementsGet' smart constructor.+data CoursesAnnouncementsGet = CoursesAnnouncementsGet'+ { _cagXgafv :: !(Maybe Xgafv)+ , _cagUploadProtocol :: !(Maybe Text)+ , _cagCourseId :: !Text+ , _cagAccessToken :: !(Maybe Text)+ , _cagUploadType :: !(Maybe Text)+ , _cagId :: !Text+ , _cagCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesAnnouncementsGet' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'cagXgafv'+--+-- * 'cagUploadProtocol'+--+-- * 'cagCourseId'+--+-- * 'cagAccessToken'+--+-- * 'cagUploadType'+--+-- * 'cagId'+--+-- * 'cagCallback'+coursesAnnouncementsGet+ :: Text -- ^ 'cagCourseId'+ -> Text -- ^ 'cagId'+ -> CoursesAnnouncementsGet+coursesAnnouncementsGet pCagCourseId_ pCagId_ =+ CoursesAnnouncementsGet'+ { _cagXgafv = Nothing+ , _cagUploadProtocol = Nothing+ , _cagCourseId = pCagCourseId_+ , _cagAccessToken = Nothing+ , _cagUploadType = Nothing+ , _cagId = pCagId_+ , _cagCallback = Nothing+ }++-- | V1 error format.+cagXgafv :: Lens' CoursesAnnouncementsGet (Maybe Xgafv)+cagXgafv = lens _cagXgafv (\ s a -> s{_cagXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+cagUploadProtocol :: Lens' CoursesAnnouncementsGet (Maybe Text)+cagUploadProtocol+ = lens _cagUploadProtocol+ (\ s a -> s{_cagUploadProtocol = a})++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+cagCourseId :: Lens' CoursesAnnouncementsGet Text+cagCourseId+ = lens _cagCourseId (\ s a -> s{_cagCourseId = a})++-- | OAuth access token.+cagAccessToken :: Lens' CoursesAnnouncementsGet (Maybe Text)+cagAccessToken+ = lens _cagAccessToken+ (\ s a -> s{_cagAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+cagUploadType :: Lens' CoursesAnnouncementsGet (Maybe Text)+cagUploadType+ = lens _cagUploadType+ (\ s a -> s{_cagUploadType = a})++-- | Identifier of the announcement.+cagId :: Lens' CoursesAnnouncementsGet Text+cagId = lens _cagId (\ s a -> s{_cagId = a})++-- | JSONP+cagCallback :: Lens' CoursesAnnouncementsGet (Maybe Text)+cagCallback+ = lens _cagCallback (\ s a -> s{_cagCallback = a})++instance GoogleRequest CoursesAnnouncementsGet where+ type Rs CoursesAnnouncementsGet = Announcement+ type Scopes CoursesAnnouncementsGet =+ '["https://www.googleapis.com/auth/classroom.announcements",+ "https://www.googleapis.com/auth/classroom.announcements.readonly"]+ requestClient CoursesAnnouncementsGet'{..}+ = go _cagCourseId _cagId _cagXgafv _cagUploadProtocol+ _cagAccessToken+ _cagUploadType+ _cagCallback+ (Just AltJSON)+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy CoursesAnnouncementsGetResource)+ mempty
+ gen/Network/Google/Resource/Classroom/Courses/Announcements/List.hs view
@@ -0,0 +1,224 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.Announcements.List+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Returns a list of announcements that the requester is permitted to view.+-- Course students may only view \`PUBLISHED\` announcements. Course+-- teachers and domain administrators may view all announcements. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` if the+-- requesting user is not permitted to access the requested course or for+-- access errors. * \`INVALID_ARGUMENT\` if the request is malformed. *+-- \`NOT_FOUND\` if the requested course does not exist.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.announcements.list@.+module Network.Google.Resource.Classroom.Courses.Announcements.List+ (+ -- * REST Resource+ CoursesAnnouncementsListResource++ -- * Creating a Request+ , coursesAnnouncementsList+ , CoursesAnnouncementsList++ -- * Request Lenses+ , calXgafv+ , calUploadProtocol+ , calOrderBy+ , calAnnouncementStates+ , calCourseId+ , calAccessToken+ , calUploadType+ , calPageToken+ , calPageSize+ , calCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.announcements.list@ method which the+-- 'CoursesAnnouncementsList' request conforms to.+type CoursesAnnouncementsListResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "announcements" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "orderBy" Text :>+ QueryParams "announcementStates" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListAnnouncementsResponse++-- | Returns a list of announcements that the requester is permitted to view.+-- Course students may only view \`PUBLISHED\` announcements. Course+-- teachers and domain administrators may view all announcements. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` if the+-- requesting user is not permitted to access the requested course or for+-- access errors. * \`INVALID_ARGUMENT\` if the request is malformed. *+-- \`NOT_FOUND\` if the requested course does not exist.+--+-- /See:/ 'coursesAnnouncementsList' smart constructor.+data CoursesAnnouncementsList = CoursesAnnouncementsList'+ { _calXgafv :: !(Maybe Xgafv)+ , _calUploadProtocol :: !(Maybe Text)+ , _calOrderBy :: !(Maybe Text)+ , _calAnnouncementStates :: !(Maybe [Text])+ , _calCourseId :: !Text+ , _calAccessToken :: !(Maybe Text)+ , _calUploadType :: !(Maybe Text)+ , _calPageToken :: !(Maybe Text)+ , _calPageSize :: !(Maybe (Textual Int32))+ , _calCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesAnnouncementsList' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'calXgafv'+--+-- * 'calUploadProtocol'+--+-- * 'calOrderBy'+--+-- * 'calAnnouncementStates'+--+-- * 'calCourseId'+--+-- * 'calAccessToken'+--+-- * 'calUploadType'+--+-- * 'calPageToken'+--+-- * 'calPageSize'+--+-- * 'calCallback'+coursesAnnouncementsList+ :: Text -- ^ 'calCourseId'+ -> CoursesAnnouncementsList+coursesAnnouncementsList pCalCourseId_ =+ CoursesAnnouncementsList'+ { _calXgafv = Nothing+ , _calUploadProtocol = Nothing+ , _calOrderBy = Nothing+ , _calAnnouncementStates = Nothing+ , _calCourseId = pCalCourseId_+ , _calAccessToken = Nothing+ , _calUploadType = Nothing+ , _calPageToken = Nothing+ , _calPageSize = Nothing+ , _calCallback = Nothing+ }++-- | V1 error format.+calXgafv :: Lens' CoursesAnnouncementsList (Maybe Xgafv)+calXgafv = lens _calXgafv (\ s a -> s{_calXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+calUploadProtocol :: Lens' CoursesAnnouncementsList (Maybe Text)+calUploadProtocol+ = lens _calUploadProtocol+ (\ s a -> s{_calUploadProtocol = a})++-- | Optional sort ordering for results. A comma-separated list of fields+-- with an optional sort direction keyword. Supported field is+-- \`updateTime\`. Supported direction keywords are \`asc\` and \`desc\`.+-- If not specified, \`updateTime desc\` is the default behavior. Examples:+-- \`updateTime asc\`, \`updateTime\`+calOrderBy :: Lens' CoursesAnnouncementsList (Maybe Text)+calOrderBy+ = lens _calOrderBy (\ s a -> s{_calOrderBy = a})++-- | Restriction on the \`state\` of announcements returned. If this argument+-- is left unspecified, the default value is \`PUBLISHED\`.+calAnnouncementStates :: Lens' CoursesAnnouncementsList [Text]+calAnnouncementStates+ = lens _calAnnouncementStates+ (\ s a -> s{_calAnnouncementStates = a})+ . _Default+ . _Coerce++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+calCourseId :: Lens' CoursesAnnouncementsList Text+calCourseId+ = lens _calCourseId (\ s a -> s{_calCourseId = a})++-- | OAuth access token.+calAccessToken :: Lens' CoursesAnnouncementsList (Maybe Text)+calAccessToken+ = lens _calAccessToken+ (\ s a -> s{_calAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+calUploadType :: Lens' CoursesAnnouncementsList (Maybe Text)+calUploadType+ = lens _calUploadType+ (\ s a -> s{_calUploadType = a})++-- | nextPageToken value returned from a previous list call, indicating that+-- the subsequent page of results should be returned. The list request must+-- be otherwise identical to the one that resulted in this token.+calPageToken :: Lens' CoursesAnnouncementsList (Maybe Text)+calPageToken+ = lens _calPageToken (\ s a -> s{_calPageToken = a})++-- | Maximum number of items to return. Zero or unspecified indicates that+-- the server may assign a maximum. The server may return fewer than the+-- specified number of results.+calPageSize :: Lens' CoursesAnnouncementsList (Maybe Int32)+calPageSize+ = lens _calPageSize (\ s a -> s{_calPageSize = a}) .+ mapping _Coerce++-- | JSONP+calCallback :: Lens' CoursesAnnouncementsList (Maybe Text)+calCallback+ = lens _calCallback (\ s a -> s{_calCallback = a})++instance GoogleRequest CoursesAnnouncementsList where+ type Rs CoursesAnnouncementsList =+ ListAnnouncementsResponse+ type Scopes CoursesAnnouncementsList =+ '["https://www.googleapis.com/auth/classroom.announcements",+ "https://www.googleapis.com/auth/classroom.announcements.readonly"]+ requestClient CoursesAnnouncementsList'{..}+ = go _calCourseId _calXgafv _calUploadProtocol+ _calOrderBy+ (_calAnnouncementStates ^. _Default)+ _calAccessToken+ _calUploadType+ _calPageToken+ _calPageSize+ _calCallback+ (Just AltJSON)+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy CoursesAnnouncementsListResource)+ mempty
+ gen/Network/Google/Resource/Classroom/Courses/Announcements/ModifyAssignees.hs view
@@ -0,0 +1,191 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies assignee mode and options of an announcement. Only a teacher of+-- the course that contains the announcement may call this method. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` if the+-- requesting user is not permitted to access the requested course or+-- course work or for access errors. * \`INVALID_ARGUMENT\` if the request+-- is malformed. * \`NOT_FOUND\` if the requested course or course work+-- does not exist.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.announcements.modifyAssignees@.+module Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees+ (+ -- * REST Resource+ CoursesAnnouncementsModifyAssigneesResource++ -- * Creating a Request+ , coursesAnnouncementsModifyAssignees+ , CoursesAnnouncementsModifyAssignees++ -- * Request Lenses+ , camaXgafv+ , camaUploadProtocol+ , camaCourseId+ , camaAccessToken+ , camaUploadType+ , camaPayload+ , camaId+ , camaCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.announcements.modifyAssignees@ method which the+-- 'CoursesAnnouncementsModifyAssignees' request conforms to.+type CoursesAnnouncementsModifyAssigneesResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "announcements" :>+ CaptureMode "id" "modifyAssignees" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ModifyAnnouncementAssigneesRequest :>+ Post '[JSON] Announcement++-- | Modifies assignee mode and options of an announcement. Only a teacher of+-- the course that contains the announcement may call this method. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` if the+-- requesting user is not permitted to access the requested course or+-- course work or for access errors. * \`INVALID_ARGUMENT\` if the request+-- is malformed. * \`NOT_FOUND\` if the requested course or course work+-- does not exist.+--+-- /See:/ 'coursesAnnouncementsModifyAssignees' smart constructor.+data CoursesAnnouncementsModifyAssignees = CoursesAnnouncementsModifyAssignees'+ { _camaXgafv :: !(Maybe Xgafv)+ , _camaUploadProtocol :: !(Maybe Text)+ , _camaCourseId :: !Text+ , _camaAccessToken :: !(Maybe Text)+ , _camaUploadType :: !(Maybe Text)+ , _camaPayload :: !ModifyAnnouncementAssigneesRequest+ , _camaId :: !Text+ , _camaCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesAnnouncementsModifyAssignees' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'camaXgafv'+--+-- * 'camaUploadProtocol'+--+-- * 'camaCourseId'+--+-- * 'camaAccessToken'+--+-- * 'camaUploadType'+--+-- * 'camaPayload'+--+-- * 'camaId'+--+-- * 'camaCallback'+coursesAnnouncementsModifyAssignees+ :: Text -- ^ 'camaCourseId'+ -> ModifyAnnouncementAssigneesRequest -- ^ 'camaPayload'+ -> Text -- ^ 'camaId'+ -> CoursesAnnouncementsModifyAssignees+coursesAnnouncementsModifyAssignees pCamaCourseId_ pCamaPayload_ pCamaId_ =+ CoursesAnnouncementsModifyAssignees'+ { _camaXgafv = Nothing+ , _camaUploadProtocol = Nothing+ , _camaCourseId = pCamaCourseId_+ , _camaAccessToken = Nothing+ , _camaUploadType = Nothing+ , _camaPayload = pCamaPayload_+ , _camaId = pCamaId_+ , _camaCallback = Nothing+ }++-- | V1 error format.+camaXgafv :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Xgafv)+camaXgafv+ = lens _camaXgafv (\ s a -> s{_camaXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+camaUploadProtocol :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)+camaUploadProtocol+ = lens _camaUploadProtocol+ (\ s a -> s{_camaUploadProtocol = a})++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+camaCourseId :: Lens' CoursesAnnouncementsModifyAssignees Text+camaCourseId+ = lens _camaCourseId (\ s a -> s{_camaCourseId = a})++-- | OAuth access token.+camaAccessToken :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)+camaAccessToken+ = lens _camaAccessToken+ (\ s a -> s{_camaAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+camaUploadType :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)+camaUploadType+ = lens _camaUploadType+ (\ s a -> s{_camaUploadType = a})++-- | Multipart request metadata.+camaPayload :: Lens' CoursesAnnouncementsModifyAssignees ModifyAnnouncementAssigneesRequest+camaPayload+ = lens _camaPayload (\ s a -> s{_camaPayload = a})++-- | Identifier of the announcement.+camaId :: Lens' CoursesAnnouncementsModifyAssignees Text+camaId = lens _camaId (\ s a -> s{_camaId = a})++-- | JSONP+camaCallback :: Lens' CoursesAnnouncementsModifyAssignees (Maybe Text)+camaCallback+ = lens _camaCallback (\ s a -> s{_camaCallback = a})++instance GoogleRequest+ CoursesAnnouncementsModifyAssignees where+ type Rs CoursesAnnouncementsModifyAssignees =+ Announcement+ type Scopes CoursesAnnouncementsModifyAssignees =+ '["https://www.googleapis.com/auth/classroom.announcements"]+ requestClient+ CoursesAnnouncementsModifyAssignees'{..}+ = go _camaCourseId _camaId _camaXgafv+ _camaUploadProtocol+ _camaAccessToken+ _camaUploadType+ _camaCallback+ (Just AltJSON)+ _camaPayload+ classroomService+ where go+ = buildClient+ (Proxy ::+ Proxy CoursesAnnouncementsModifyAssigneesResource)+ mempty
+ gen/Network/Google/Resource/Classroom/Courses/Announcements/Patch.hs view
@@ -0,0 +1,206 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.Announcements.Patch+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Updates one or more fields of an announcement. This method returns the+-- following error codes: * \`PERMISSION_DENIED\` if the requesting+-- developer project did not create the corresponding announcement or for+-- access errors. * \`INVALID_ARGUMENT\` if the request is malformed. *+-- \`FAILED_PRECONDITION\` if the requested announcement has already been+-- deleted. * \`NOT_FOUND\` if the requested course or announcement does+-- not exist+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.announcements.patch@.+module Network.Google.Resource.Classroom.Courses.Announcements.Patch+ (+ -- * REST Resource+ CoursesAnnouncementsPatchResource++ -- * Creating a Request+ , coursesAnnouncementsPatch+ , CoursesAnnouncementsPatch++ -- * Request Lenses+ , capXgafv+ , capUploadProtocol+ , capUpdateMask+ , capCourseId+ , capAccessToken+ , capUploadType+ , capPayload+ , capId+ , capCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.announcements.patch@ method which the+-- 'CoursesAnnouncementsPatch' request conforms to.+type CoursesAnnouncementsPatchResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "announcements" :>+ Capture "id" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Announcement :>+ Patch '[JSON] Announcement++-- | Updates one or more fields of an announcement. This method returns the+-- following error codes: * \`PERMISSION_DENIED\` if the requesting+-- developer project did not create the corresponding announcement or for+-- access errors. * \`INVALID_ARGUMENT\` if the request is malformed. *+-- \`FAILED_PRECONDITION\` if the requested announcement has already been+-- deleted. * \`NOT_FOUND\` if the requested course or announcement does+-- not exist+--+-- /See:/ 'coursesAnnouncementsPatch' smart constructor.+data CoursesAnnouncementsPatch = CoursesAnnouncementsPatch'+ { _capXgafv :: !(Maybe Xgafv)+ , _capUploadProtocol :: !(Maybe Text)+ , _capUpdateMask :: !(Maybe GFieldMask)+ , _capCourseId :: !Text+ , _capAccessToken :: !(Maybe Text)+ , _capUploadType :: !(Maybe Text)+ , _capPayload :: !Announcement+ , _capId :: !Text+ , _capCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesAnnouncementsPatch' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'capXgafv'+--+-- * 'capUploadProtocol'+--+-- * 'capUpdateMask'+--+-- * 'capCourseId'+--+-- * 'capAccessToken'+--+-- * 'capUploadType'+--+-- * 'capPayload'+--+-- * 'capId'+--+-- * 'capCallback'+coursesAnnouncementsPatch+ :: Text -- ^ 'capCourseId'+ -> Announcement -- ^ 'capPayload'+ -> Text -- ^ 'capId'+ -> CoursesAnnouncementsPatch+coursesAnnouncementsPatch pCapCourseId_ pCapPayload_ pCapId_ =+ CoursesAnnouncementsPatch'+ { _capXgafv = Nothing+ , _capUploadProtocol = Nothing+ , _capUpdateMask = Nothing+ , _capCourseId = pCapCourseId_+ , _capAccessToken = Nothing+ , _capUploadType = Nothing+ , _capPayload = pCapPayload_+ , _capId = pCapId_+ , _capCallback = Nothing+ }++-- | V1 error format.+capXgafv :: Lens' CoursesAnnouncementsPatch (Maybe Xgafv)+capXgafv = lens _capXgafv (\ s a -> s{_capXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+capUploadProtocol :: Lens' CoursesAnnouncementsPatch (Maybe Text)+capUploadProtocol+ = lens _capUploadProtocol+ (\ s a -> s{_capUploadProtocol = a})++-- | Mask that identifies which fields on the announcement to update. This+-- field is required to do an update. The update fails if invalid fields+-- are specified. If a field supports empty values, it can be cleared by+-- specifying it in the update mask and not in the Announcement object. If+-- a field that does not support empty values is included in the update+-- mask and not set in the Announcement object, an \`INVALID_ARGUMENT\`+-- error will be returned. The following fields may be specified by+-- teachers: * \`text\` * \`state\` * \`scheduled_time\`+capUpdateMask :: Lens' CoursesAnnouncementsPatch (Maybe GFieldMask)+capUpdateMask+ = lens _capUpdateMask+ (\ s a -> s{_capUpdateMask = a})++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+capCourseId :: Lens' CoursesAnnouncementsPatch Text+capCourseId+ = lens _capCourseId (\ s a -> s{_capCourseId = a})++-- | OAuth access token.+capAccessToken :: Lens' CoursesAnnouncementsPatch (Maybe Text)+capAccessToken+ = lens _capAccessToken+ (\ s a -> s{_capAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+capUploadType :: Lens' CoursesAnnouncementsPatch (Maybe Text)+capUploadType+ = lens _capUploadType+ (\ s a -> s{_capUploadType = a})++-- | Multipart request metadata.+capPayload :: Lens' CoursesAnnouncementsPatch Announcement+capPayload+ = lens _capPayload (\ s a -> s{_capPayload = a})++-- | Identifier of the announcement.+capId :: Lens' CoursesAnnouncementsPatch Text+capId = lens _capId (\ s a -> s{_capId = a})++-- | JSONP+capCallback :: Lens' CoursesAnnouncementsPatch (Maybe Text)+capCallback+ = lens _capCallback (\ s a -> s{_capCallback = a})++instance GoogleRequest CoursesAnnouncementsPatch+ where+ type Rs CoursesAnnouncementsPatch = Announcement+ type Scopes CoursesAnnouncementsPatch =+ '["https://www.googleapis.com/auth/classroom.announcements"]+ requestClient CoursesAnnouncementsPatch'{..}+ = go _capCourseId _capId _capXgafv _capUploadProtocol+ _capUpdateMask+ _capAccessToken+ _capUploadType+ _capCallback+ (Just AltJSON)+ _capPayload+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy CoursesAnnouncementsPatchResource)+ mempty
gen/Network/Google/Resource/Classroom/Courses/CourseWork/Create.hs view
@@ -47,12 +47,10 @@ -- * Request Lenses , ccwcXgafv , ccwcUploadProtocol- , ccwcPp , ccwcCourseId , ccwcAccessToken , ccwcUploadType , ccwcPayload- , ccwcBearerToken , ccwcCallback ) where @@ -66,16 +64,13 @@ "courses" :> Capture "courseId" Text :> "courseWork" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] CourseWork :>- Post '[JSON] CourseWork+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] CourseWork :> Post '[JSON] CourseWork -- | Creates course work. The resulting course work (and corresponding -- student submissions) are associated with the Developer Console project@@ -93,14 +88,12 @@ -- -- /See:/ 'coursesCourseWorkCreate' smart constructor. data CoursesCourseWorkCreate = CoursesCourseWorkCreate'- { _ccwcXgafv :: !(Maybe Text)+ { _ccwcXgafv :: !(Maybe Xgafv) , _ccwcUploadProtocol :: !(Maybe Text)- , _ccwcPp :: !Bool , _ccwcCourseId :: !Text , _ccwcAccessToken :: !(Maybe Text) , _ccwcUploadType :: !(Maybe Text) , _ccwcPayload :: !CourseWork- , _ccwcBearerToken :: !(Maybe Text) , _ccwcCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -112,8 +105,6 @@ -- -- * 'ccwcUploadProtocol' ----- * 'ccwcPp'--- -- * 'ccwcCourseId' -- -- * 'ccwcAccessToken'@@ -122,8 +113,6 @@ -- -- * 'ccwcPayload' ----- * 'ccwcBearerToken'--- -- * 'ccwcCallback' coursesCourseWorkCreate :: Text -- ^ 'ccwcCourseId'@@ -133,17 +122,15 @@ CoursesCourseWorkCreate' { _ccwcXgafv = Nothing , _ccwcUploadProtocol = Nothing- , _ccwcPp = True , _ccwcCourseId = pCcwcCourseId_ , _ccwcAccessToken = Nothing , _ccwcUploadType = Nothing , _ccwcPayload = pCcwcPayload_- , _ccwcBearerToken = Nothing , _ccwcCallback = Nothing } -- | V1 error format.-ccwcXgafv :: Lens' CoursesCourseWorkCreate (Maybe Text)+ccwcXgafv :: Lens' CoursesCourseWorkCreate (Maybe Xgafv) ccwcXgafv = lens _ccwcXgafv (\ s a -> s{_ccwcXgafv = a}) @@ -153,10 +140,6 @@ = lens _ccwcUploadProtocol (\ s a -> s{_ccwcUploadProtocol = a}) --- | Pretty-print response.-ccwcPp :: Lens' CoursesCourseWorkCreate Bool-ccwcPp = lens _ccwcPp (\ s a -> s{_ccwcPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwcCourseId :: Lens' CoursesCourseWorkCreate Text@@ -180,12 +163,6 @@ ccwcPayload = lens _ccwcPayload (\ s a -> s{_ccwcPayload = a}) --- | OAuth bearer token.-ccwcBearerToken :: Lens' CoursesCourseWorkCreate (Maybe Text)-ccwcBearerToken- = lens _ccwcBearerToken- (\ s a -> s{_ccwcBearerToken = a})- -- | JSONP ccwcCallback :: Lens' CoursesCourseWorkCreate (Maybe Text) ccwcCallback@@ -197,10 +174,8 @@ '["https://www.googleapis.com/auth/classroom.coursework.students"] requestClient CoursesCourseWorkCreate'{..} = go _ccwcCourseId _ccwcXgafv _ccwcUploadProtocol- (Just _ccwcPp) _ccwcAccessToken _ccwcUploadType- _ccwcBearerToken _ccwcCallback (Just AltJSON) _ccwcPayload
gen/Network/Google/Resource/Classroom/Courses/CourseWork/Delete.hs view
@@ -43,11 +43,9 @@ -- * Request Lenses , ccwdXgafv , ccwdUploadProtocol- , ccwdPp , ccwdCourseId , ccwdAccessToken , ccwdUploadType- , ccwdBearerToken , ccwdId , ccwdCallback ) where@@ -63,14 +61,12 @@ Capture "courseId" Text :> "courseWork" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes a course work. This request must be made by the Developer -- Console project of the [OAuth client@@ -84,13 +80,11 @@ -- -- /See:/ 'coursesCourseWorkDelete' smart constructor. data CoursesCourseWorkDelete = CoursesCourseWorkDelete'- { _ccwdXgafv :: !(Maybe Text)+ { _ccwdXgafv :: !(Maybe Xgafv) , _ccwdUploadProtocol :: !(Maybe Text)- , _ccwdPp :: !Bool , _ccwdCourseId :: !Text , _ccwdAccessToken :: !(Maybe Text) , _ccwdUploadType :: !(Maybe Text)- , _ccwdBearerToken :: !(Maybe Text) , _ccwdId :: !Text , _ccwdCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -103,16 +97,12 @@ -- -- * 'ccwdUploadProtocol' ----- * 'ccwdPp'--- -- * 'ccwdCourseId' -- -- * 'ccwdAccessToken' -- -- * 'ccwdUploadType' ----- * 'ccwdBearerToken'--- -- * 'ccwdId' -- -- * 'ccwdCallback'@@ -124,17 +114,15 @@ CoursesCourseWorkDelete' { _ccwdXgafv = Nothing , _ccwdUploadProtocol = Nothing- , _ccwdPp = True , _ccwdCourseId = pCcwdCourseId_ , _ccwdAccessToken = Nothing , _ccwdUploadType = Nothing- , _ccwdBearerToken = Nothing , _ccwdId = pCcwdId_ , _ccwdCallback = Nothing } -- | V1 error format.-ccwdXgafv :: Lens' CoursesCourseWorkDelete (Maybe Text)+ccwdXgafv :: Lens' CoursesCourseWorkDelete (Maybe Xgafv) ccwdXgafv = lens _ccwdXgafv (\ s a -> s{_ccwdXgafv = a}) @@ -144,10 +132,6 @@ = lens _ccwdUploadProtocol (\ s a -> s{_ccwdUploadProtocol = a}) --- | Pretty-print response.-ccwdPp :: Lens' CoursesCourseWorkDelete Bool-ccwdPp = lens _ccwdPp (\ s a -> s{_ccwdPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwdCourseId :: Lens' CoursesCourseWorkDelete Text@@ -166,12 +150,6 @@ = lens _ccwdUploadType (\ s a -> s{_ccwdUploadType = a}) --- | OAuth bearer token.-ccwdBearerToken :: Lens' CoursesCourseWorkDelete (Maybe Text)-ccwdBearerToken- = lens _ccwdBearerToken- (\ s a -> s{_ccwdBearerToken = a})- -- | Identifier of the course work to delete. This identifier is a -- Classroom-assigned identifier. ccwdId :: Lens' CoursesCourseWorkDelete Text@@ -189,10 +167,8 @@ requestClient CoursesCourseWorkDelete'{..} = go _ccwdCourseId _ccwdId _ccwdXgafv _ccwdUploadProtocol- (Just _ccwdPp) _ccwdAccessToken _ccwdUploadType- _ccwdBearerToken _ccwdCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/CourseWork/Get.hs view
@@ -39,11 +39,9 @@ -- * Request Lenses , ccwgXgafv , ccwgUploadProtocol- , ccwgPp , ccwgCourseId , ccwgAccessToken , ccwgUploadType- , ccwgBearerToken , ccwgId , ccwgCallback ) where@@ -59,14 +57,12 @@ Capture "courseId" Text :> "courseWork" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] CourseWork+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] CourseWork -- | Returns course work. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to access@@ -76,13 +72,11 @@ -- -- /See:/ 'coursesCourseWorkGet' smart constructor. data CoursesCourseWorkGet = CoursesCourseWorkGet'- { _ccwgXgafv :: !(Maybe Text)+ { _ccwgXgafv :: !(Maybe Xgafv) , _ccwgUploadProtocol :: !(Maybe Text)- , _ccwgPp :: !Bool , _ccwgCourseId :: !Text , _ccwgAccessToken :: !(Maybe Text) , _ccwgUploadType :: !(Maybe Text)- , _ccwgBearerToken :: !(Maybe Text) , _ccwgId :: !Text , _ccwgCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -95,16 +89,12 @@ -- -- * 'ccwgUploadProtocol' ----- * 'ccwgPp'--- -- * 'ccwgCourseId' -- -- * 'ccwgAccessToken' -- -- * 'ccwgUploadType' ----- * 'ccwgBearerToken'--- -- * 'ccwgId' -- -- * 'ccwgCallback'@@ -116,17 +106,15 @@ CoursesCourseWorkGet' { _ccwgXgafv = Nothing , _ccwgUploadProtocol = Nothing- , _ccwgPp = True , _ccwgCourseId = pCcwgCourseId_ , _ccwgAccessToken = Nothing , _ccwgUploadType = Nothing- , _ccwgBearerToken = Nothing , _ccwgId = pCcwgId_ , _ccwgCallback = Nothing } -- | V1 error format.-ccwgXgafv :: Lens' CoursesCourseWorkGet (Maybe Text)+ccwgXgafv :: Lens' CoursesCourseWorkGet (Maybe Xgafv) ccwgXgafv = lens _ccwgXgafv (\ s a -> s{_ccwgXgafv = a}) @@ -136,10 +124,6 @@ = lens _ccwgUploadProtocol (\ s a -> s{_ccwgUploadProtocol = a}) --- | Pretty-print response.-ccwgPp :: Lens' CoursesCourseWorkGet Bool-ccwgPp = lens _ccwgPp (\ s a -> s{_ccwgPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwgCourseId :: Lens' CoursesCourseWorkGet Text@@ -158,12 +142,6 @@ = lens _ccwgUploadType (\ s a -> s{_ccwgUploadType = a}) --- | OAuth bearer token.-ccwgBearerToken :: Lens' CoursesCourseWorkGet (Maybe Text)-ccwgBearerToken- = lens _ccwgBearerToken- (\ s a -> s{_ccwgBearerToken = a})- -- | Identifier of the course work. ccwgId :: Lens' CoursesCourseWorkGet Text ccwgId = lens _ccwgId (\ s a -> s{_ccwgId = a})@@ -176,18 +154,15 @@ instance GoogleRequest CoursesCourseWorkGet where type Rs CoursesCourseWorkGet = CourseWork type Scopes CoursesCourseWorkGet =- '["https://www.googleapis.com/auth/classroom.course-work.readonly",- "https://www.googleapis.com/auth/classroom.coursework.me",+ '["https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", "https://www.googleapis.com/auth/classroom.coursework.students", "https://www.googleapis.com/auth/classroom.coursework.students.readonly"] requestClient CoursesCourseWorkGet'{..} = go _ccwgCourseId _ccwgId _ccwgXgafv _ccwgUploadProtocol- (Just _ccwgPp) _ccwgAccessToken _ccwgUploadType- _ccwgBearerToken _ccwgCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/CourseWork/List.hs view
@@ -42,12 +42,10 @@ , ccwlXgafv , ccwlUploadProtocol , ccwlOrderBy- , ccwlPp , ccwlCourseId , ccwlAccessToken , ccwlCourseWorkStates , ccwlUploadType- , ccwlBearerToken , ccwlPageToken , ccwlPageSize , ccwlCallback@@ -63,19 +61,17 @@ "courses" :> Capture "courseId" Text :> "courseWork" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :> QueryParam "orderBy" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParams "courseWorkStates" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListCourseWorkResponse+ QueryParam "access_token" Text :>+ QueryParams "courseWorkStates" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListCourseWorkResponse -- | Returns a list of course work that the requester is permitted to view. -- Course students may only view \`PUBLISHED\` course work. Course teachers@@ -87,15 +83,13 @@ -- -- /See:/ 'coursesCourseWorkList' smart constructor. data CoursesCourseWorkList = CoursesCourseWorkList'- { _ccwlXgafv :: !(Maybe Text)+ { _ccwlXgafv :: !(Maybe Xgafv) , _ccwlUploadProtocol :: !(Maybe Text) , _ccwlOrderBy :: !(Maybe Text)- , _ccwlPp :: !Bool , _ccwlCourseId :: !Text , _ccwlAccessToken :: !(Maybe Text) , _ccwlCourseWorkStates :: !(Maybe [Text]) , _ccwlUploadType :: !(Maybe Text)- , _ccwlBearerToken :: !(Maybe Text) , _ccwlPageToken :: !(Maybe Text) , _ccwlPageSize :: !(Maybe (Textual Int32)) , _ccwlCallback :: !(Maybe Text)@@ -111,8 +105,6 @@ -- -- * 'ccwlOrderBy' ----- * 'ccwlPp'--- -- * 'ccwlCourseId' -- -- * 'ccwlAccessToken'@@ -121,8 +113,6 @@ -- -- * 'ccwlUploadType' ----- * 'ccwlBearerToken'--- -- * 'ccwlPageToken' -- -- * 'ccwlPageSize'@@ -136,19 +126,17 @@ { _ccwlXgafv = Nothing , _ccwlUploadProtocol = Nothing , _ccwlOrderBy = Nothing- , _ccwlPp = True , _ccwlCourseId = pCcwlCourseId_ , _ccwlAccessToken = Nothing , _ccwlCourseWorkStates = Nothing , _ccwlUploadType = Nothing- , _ccwlBearerToken = Nothing , _ccwlPageToken = Nothing , _ccwlPageSize = Nothing , _ccwlCallback = Nothing } -- | V1 error format.-ccwlXgafv :: Lens' CoursesCourseWorkList (Maybe Text)+ccwlXgafv :: Lens' CoursesCourseWorkList (Maybe Xgafv) ccwlXgafv = lens _ccwlXgafv (\ s a -> s{_ccwlXgafv = a}) @@ -168,10 +156,6 @@ ccwlOrderBy = lens _ccwlOrderBy (\ s a -> s{_ccwlOrderBy = a}) --- | Pretty-print response.-ccwlPp :: Lens' CoursesCourseWorkList Bool-ccwlPp = lens _ccwlPp (\ s a -> s{_ccwlPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwlCourseId :: Lens' CoursesCourseWorkList Text@@ -200,12 +184,6 @@ = lens _ccwlUploadType (\ s a -> s{_ccwlUploadType = a}) --- | OAuth bearer token.-ccwlBearerToken :: Lens' CoursesCourseWorkList (Maybe Text)-ccwlBearerToken- = lens _ccwlBearerToken- (\ s a -> s{_ccwlBearerToken = a})- -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.@@ -231,19 +209,16 @@ type Rs CoursesCourseWorkList = ListCourseWorkResponse type Scopes CoursesCourseWorkList =- '["https://www.googleapis.com/auth/classroom.course-work.readonly",- "https://www.googleapis.com/auth/classroom.coursework.me",+ '["https://www.googleapis.com/auth/classroom.coursework.me", "https://www.googleapis.com/auth/classroom.coursework.me.readonly", "https://www.googleapis.com/auth/classroom.coursework.students", "https://www.googleapis.com/auth/classroom.coursework.students.readonly"] requestClient CoursesCourseWorkList'{..} = go _ccwlCourseId _ccwlXgafv _ccwlUploadProtocol _ccwlOrderBy- (Just _ccwlPp) _ccwlAccessToken (_ccwlCourseWorkStates ^. _Default) _ccwlUploadType- _ccwlBearerToken _ccwlPageToken _ccwlPageSize _ccwlCallback
+ gen/Network/Google/Resource/Classroom/Courses/CourseWork/ModifyAssignees.hs view
@@ -0,0 +1,191 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Modifies assignee mode and options of a coursework. Only a teacher of+-- the course that contains the coursework may call this method. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` if the+-- requesting user is not permitted to access the requested course or+-- course work or for access errors. * \`INVALID_ARGUMENT\` if the request+-- is malformed. * \`NOT_FOUND\` if the requested course or course work+-- does not exist.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.courseWork.modifyAssignees@.+module Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees+ (+ -- * REST Resource+ CoursesCourseWorkModifyAssigneesResource++ -- * Creating a Request+ , coursesCourseWorkModifyAssignees+ , CoursesCourseWorkModifyAssignees++ -- * Request Lenses+ , ccwmaXgafv+ , ccwmaUploadProtocol+ , ccwmaCourseId+ , ccwmaAccessToken+ , ccwmaUploadType+ , ccwmaPayload+ , ccwmaId+ , ccwmaCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.courses.courseWork.modifyAssignees@ method which the+-- 'CoursesCourseWorkModifyAssignees' request conforms to.+type CoursesCourseWorkModifyAssigneesResource =+ "v1" :>+ "courses" :>+ Capture "courseId" Text :>+ "courseWork" :>+ CaptureMode "id" "modifyAssignees" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ModifyCourseWorkAssigneesRequest :>+ Post '[JSON] CourseWork++-- | Modifies assignee mode and options of a coursework. Only a teacher of+-- the course that contains the coursework may call this method. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` if the+-- requesting user is not permitted to access the requested course or+-- course work or for access errors. * \`INVALID_ARGUMENT\` if the request+-- is malformed. * \`NOT_FOUND\` if the requested course or course work+-- does not exist.+--+-- /See:/ 'coursesCourseWorkModifyAssignees' smart constructor.+data CoursesCourseWorkModifyAssignees = CoursesCourseWorkModifyAssignees'+ { _ccwmaXgafv :: !(Maybe Xgafv)+ , _ccwmaUploadProtocol :: !(Maybe Text)+ , _ccwmaCourseId :: !Text+ , _ccwmaAccessToken :: !(Maybe Text)+ , _ccwmaUploadType :: !(Maybe Text)+ , _ccwmaPayload :: !ModifyCourseWorkAssigneesRequest+ , _ccwmaId :: !Text+ , _ccwmaCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'CoursesCourseWorkModifyAssignees' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'ccwmaXgafv'+--+-- * 'ccwmaUploadProtocol'+--+-- * 'ccwmaCourseId'+--+-- * 'ccwmaAccessToken'+--+-- * 'ccwmaUploadType'+--+-- * 'ccwmaPayload'+--+-- * 'ccwmaId'+--+-- * 'ccwmaCallback'+coursesCourseWorkModifyAssignees+ :: Text -- ^ 'ccwmaCourseId'+ -> ModifyCourseWorkAssigneesRequest -- ^ 'ccwmaPayload'+ -> Text -- ^ 'ccwmaId'+ -> CoursesCourseWorkModifyAssignees+coursesCourseWorkModifyAssignees pCcwmaCourseId_ pCcwmaPayload_ pCcwmaId_ =+ CoursesCourseWorkModifyAssignees'+ { _ccwmaXgafv = Nothing+ , _ccwmaUploadProtocol = Nothing+ , _ccwmaCourseId = pCcwmaCourseId_+ , _ccwmaAccessToken = Nothing+ , _ccwmaUploadType = Nothing+ , _ccwmaPayload = pCcwmaPayload_+ , _ccwmaId = pCcwmaId_+ , _ccwmaCallback = Nothing+ }++-- | V1 error format.+ccwmaXgafv :: Lens' CoursesCourseWorkModifyAssignees (Maybe Xgafv)+ccwmaXgafv+ = lens _ccwmaXgafv (\ s a -> s{_ccwmaXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+ccwmaUploadProtocol :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)+ccwmaUploadProtocol+ = lens _ccwmaUploadProtocol+ (\ s a -> s{_ccwmaUploadProtocol = a})++-- | Identifier of the course. This identifier can be either the+-- Classroom-assigned identifier or an alias.+ccwmaCourseId :: Lens' CoursesCourseWorkModifyAssignees Text+ccwmaCourseId+ = lens _ccwmaCourseId+ (\ s a -> s{_ccwmaCourseId = a})++-- | OAuth access token.+ccwmaAccessToken :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)+ccwmaAccessToken+ = lens _ccwmaAccessToken+ (\ s a -> s{_ccwmaAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+ccwmaUploadType :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)+ccwmaUploadType+ = lens _ccwmaUploadType+ (\ s a -> s{_ccwmaUploadType = a})++-- | Multipart request metadata.+ccwmaPayload :: Lens' CoursesCourseWorkModifyAssignees ModifyCourseWorkAssigneesRequest+ccwmaPayload+ = lens _ccwmaPayload (\ s a -> s{_ccwmaPayload = a})++-- | Identifier of the coursework.+ccwmaId :: Lens' CoursesCourseWorkModifyAssignees Text+ccwmaId = lens _ccwmaId (\ s a -> s{_ccwmaId = a})++-- | JSONP+ccwmaCallback :: Lens' CoursesCourseWorkModifyAssignees (Maybe Text)+ccwmaCallback+ = lens _ccwmaCallback+ (\ s a -> s{_ccwmaCallback = a})++instance GoogleRequest+ CoursesCourseWorkModifyAssignees where+ type Rs CoursesCourseWorkModifyAssignees = CourseWork+ type Scopes CoursesCourseWorkModifyAssignees =+ '["https://www.googleapis.com/auth/classroom.coursework.students"]+ requestClient CoursesCourseWorkModifyAssignees'{..}+ = go _ccwmaCourseId _ccwmaId _ccwmaXgafv+ _ccwmaUploadProtocol+ _ccwmaAccessToken+ _ccwmaUploadType+ _ccwmaCallback+ (Just AltJSON)+ _ccwmaPayload+ classroomService+ where go+ = buildClient+ (Proxy ::+ Proxy CoursesCourseWorkModifyAssigneesResource)+ mempty
gen/Network/Google/Resource/Classroom/Courses/CourseWork/Patch.hs view
@@ -48,12 +48,10 @@ , ccwpXgafv , ccwpUploadProtocol , ccwpUpdateMask- , ccwpPp , ccwpCourseId , ccwpAccessToken , ccwpUploadType , ccwpPayload- , ccwpBearerToken , ccwpId , ccwpCallback ) where@@ -69,17 +67,15 @@ Capture "courseId" Text :> "courseWork" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "updateMask" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] CourseWork :>- Patch '[JSON] CourseWork+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] CourseWork :>+ Patch '[JSON] CourseWork -- | Updates one or more fields of a course work. See -- google.classroom.v1.CourseWork for details of which fields may be@@ -97,15 +93,13 @@ -- -- /See:/ 'coursesCourseWorkPatch' smart constructor. data CoursesCourseWorkPatch = CoursesCourseWorkPatch'- { _ccwpXgafv :: !(Maybe Text)+ { _ccwpXgafv :: !(Maybe Xgafv) , _ccwpUploadProtocol :: !(Maybe Text)- , _ccwpUpdateMask :: !(Maybe Text)- , _ccwpPp :: !Bool+ , _ccwpUpdateMask :: !(Maybe GFieldMask) , _ccwpCourseId :: !Text , _ccwpAccessToken :: !(Maybe Text) , _ccwpUploadType :: !(Maybe Text) , _ccwpPayload :: !CourseWork- , _ccwpBearerToken :: !(Maybe Text) , _ccwpId :: !Text , _ccwpCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -120,8 +114,6 @@ -- -- * 'ccwpUpdateMask' ----- * 'ccwpPp'--- -- * 'ccwpCourseId' -- -- * 'ccwpAccessToken'@@ -130,8 +122,6 @@ -- -- * 'ccwpPayload' ----- * 'ccwpBearerToken'--- -- * 'ccwpId' -- -- * 'ccwpCallback'@@ -145,18 +135,16 @@ { _ccwpXgafv = Nothing , _ccwpUploadProtocol = Nothing , _ccwpUpdateMask = Nothing- , _ccwpPp = True , _ccwpCourseId = pCcwpCourseId_ , _ccwpAccessToken = Nothing , _ccwpUploadType = Nothing , _ccwpPayload = pCcwpPayload_- , _ccwpBearerToken = Nothing , _ccwpId = pCcwpId_ , _ccwpCallback = Nothing } -- | V1 error format.-ccwpXgafv :: Lens' CoursesCourseWorkPatch (Maybe Text)+ccwpXgafv :: Lens' CoursesCourseWorkPatch (Maybe Xgafv) ccwpXgafv = lens _ccwpXgafv (\ s a -> s{_ccwpXgafv = a}) @@ -174,16 +162,12 @@ -- and not set in the CourseWork object, an \`INVALID_ARGUMENT\` error will -- be returned. The following fields may be specified by teachers: * -- \`title\` * \`description\` * \`state\` * \`due_date\` * \`due_time\` *--- \`max_points\` * \`submission_modification_mode\`-ccwpUpdateMask :: Lens' CoursesCourseWorkPatch (Maybe Text)+-- \`max_points\` * \`scheduled_time\` * \`submission_modification_mode\`+ccwpUpdateMask :: Lens' CoursesCourseWorkPatch (Maybe GFieldMask) ccwpUpdateMask = lens _ccwpUpdateMask (\ s a -> s{_ccwpUpdateMask = a}) --- | Pretty-print response.-ccwpPp :: Lens' CoursesCourseWorkPatch Bool-ccwpPp = lens _ccwpPp (\ s a -> s{_ccwpPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwpCourseId :: Lens' CoursesCourseWorkPatch Text@@ -207,12 +191,6 @@ ccwpPayload = lens _ccwpPayload (\ s a -> s{_ccwpPayload = a}) --- | OAuth bearer token.-ccwpBearerToken :: Lens' CoursesCourseWorkPatch (Maybe Text)-ccwpBearerToken- = lens _ccwpBearerToken- (\ s a -> s{_ccwpBearerToken = a})- -- | Identifier of the course work. ccwpId :: Lens' CoursesCourseWorkPatch Text ccwpId = lens _ccwpId (\ s a -> s{_ccwpId = a})@@ -230,10 +208,8 @@ = go _ccwpCourseId _ccwpId _ccwpXgafv _ccwpUploadProtocol _ccwpUpdateMask- (Just _ccwpPp) _ccwpAccessToken _ccwpUploadType- _ccwpBearerToken _ccwpCallback (Just AltJSON) _ccwpPayload
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Get.hs view
@@ -39,11 +39,9 @@ -- * Request Lenses , ccwssgXgafv , ccwssgUploadProtocol- , ccwssgPp , ccwssgCourseId , ccwssgAccessToken , ccwssgUploadType- , ccwssgBearerToken , ccwssgId , ccwssgCallback , ccwssgCourseWorkId@@ -62,15 +60,13 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] StudentSubmission+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] StudentSubmission -- | Returns a student submission. * \`PERMISSION_DENIED\` if the requesting -- user is not permitted to access the requested course, course work, or@@ -80,13 +76,11 @@ -- -- /See:/ 'coursesCourseWorkStudentSubmissionsGet' smart constructor. data CoursesCourseWorkStudentSubmissionsGet = CoursesCourseWorkStudentSubmissionsGet'- { _ccwssgXgafv :: !(Maybe Text)+ { _ccwssgXgafv :: !(Maybe Xgafv) , _ccwssgUploadProtocol :: !(Maybe Text)- , _ccwssgPp :: !Bool , _ccwssgCourseId :: !Text , _ccwssgAccessToken :: !(Maybe Text) , _ccwssgUploadType :: !(Maybe Text)- , _ccwssgBearerToken :: !(Maybe Text) , _ccwssgId :: !Text , _ccwssgCallback :: !(Maybe Text) , _ccwssgCourseWorkId :: !Text@@ -100,16 +94,12 @@ -- -- * 'ccwssgUploadProtocol' ----- * 'ccwssgPp'--- -- * 'ccwssgCourseId' -- -- * 'ccwssgAccessToken' -- -- * 'ccwssgUploadType' ----- * 'ccwssgBearerToken'--- -- * 'ccwssgId' -- -- * 'ccwssgCallback'@@ -124,18 +114,16 @@ CoursesCourseWorkStudentSubmissionsGet' { _ccwssgXgafv = Nothing , _ccwssgUploadProtocol = Nothing- , _ccwssgPp = True , _ccwssgCourseId = pCcwssgCourseId_ , _ccwssgAccessToken = Nothing , _ccwssgUploadType = Nothing- , _ccwssgBearerToken = Nothing , _ccwssgId = pCcwssgId_ , _ccwssgCallback = Nothing , _ccwssgCourseWorkId = pCcwssgCourseWorkId_ } -- | V1 error format.-ccwssgXgafv :: Lens' CoursesCourseWorkStudentSubmissionsGet (Maybe Text)+ccwssgXgafv :: Lens' CoursesCourseWorkStudentSubmissionsGet (Maybe Xgafv) ccwssgXgafv = lens _ccwssgXgafv (\ s a -> s{_ccwssgXgafv = a}) @@ -145,10 +133,6 @@ = lens _ccwssgUploadProtocol (\ s a -> s{_ccwssgUploadProtocol = a}) --- | Pretty-print response.-ccwssgPp :: Lens' CoursesCourseWorkStudentSubmissionsGet Bool-ccwssgPp = lens _ccwssgPp (\ s a -> s{_ccwssgPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwssgCourseId :: Lens' CoursesCourseWorkStudentSubmissionsGet Text@@ -168,12 +152,6 @@ = lens _ccwssgUploadType (\ s a -> s{_ccwssgUploadType = a}) --- | OAuth bearer token.-ccwssgBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsGet (Maybe Text)-ccwssgBearerToken- = lens _ccwssgBearerToken- (\ s a -> s{_ccwssgBearerToken = a})- -- | Identifier of the student submission. ccwssgId :: Lens' CoursesCourseWorkStudentSubmissionsGet Text ccwssgId = lens _ccwssgId (\ s a -> s{_ccwssgId = a})@@ -206,10 +184,8 @@ = go _ccwssgCourseId _ccwssgCourseWorkId _ccwssgId _ccwssgXgafv _ccwssgUploadProtocol- (Just _ccwssgPp) _ccwssgAccessToken _ccwssgUploadType- _ccwssgBearerToken _ccwssgCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/List.hs view
@@ -46,12 +46,10 @@ , ccwsslXgafv , ccwsslLate , ccwsslUploadProtocol- , ccwsslPp , ccwsslCourseId , ccwsslAccessToken , ccwsslUploadType , ccwsslUserId- , ccwsslBearerToken , ccwsslPageToken , ccwsslPageSize , ccwsslCallback@@ -72,20 +70,18 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> QueryParams "states" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "late" Text :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "userId" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON]- ListStudentSubmissionsResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "userId" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON]+ ListStudentSubmissionsResponse -- | Returns a list of student submissions that the requester is permitted to -- view, factoring in the OAuth scopes of the request. \`-\` may be@@ -101,15 +97,13 @@ -- /See:/ 'coursesCourseWorkStudentSubmissionsList' smart constructor. data CoursesCourseWorkStudentSubmissionsList = CoursesCourseWorkStudentSubmissionsList' { _ccwsslStates :: !(Maybe [Text])- , _ccwsslXgafv :: !(Maybe Text)+ , _ccwsslXgafv :: !(Maybe Xgafv) , _ccwsslLate :: !(Maybe Text) , _ccwsslUploadProtocol :: !(Maybe Text)- , _ccwsslPp :: !Bool , _ccwsslCourseId :: !Text , _ccwsslAccessToken :: !(Maybe Text) , _ccwsslUploadType :: !(Maybe Text) , _ccwsslUserId :: !(Maybe Text)- , _ccwsslBearerToken :: !(Maybe Text) , _ccwsslPageToken :: !(Maybe Text) , _ccwsslPageSize :: !(Maybe (Textual Int32)) , _ccwsslCallback :: !(Maybe Text)@@ -128,8 +122,6 @@ -- -- * 'ccwsslUploadProtocol' ----- * 'ccwsslPp'--- -- * 'ccwsslCourseId' -- -- * 'ccwsslAccessToken'@@ -138,8 +130,6 @@ -- -- * 'ccwsslUserId' ----- * 'ccwsslBearerToken'--- -- * 'ccwsslPageToken' -- -- * 'ccwsslPageSize'@@ -157,12 +147,10 @@ , _ccwsslXgafv = Nothing , _ccwsslLate = Nothing , _ccwsslUploadProtocol = Nothing- , _ccwsslPp = True , _ccwsslCourseId = pCcwsslCourseId_ , _ccwsslAccessToken = Nothing , _ccwsslUploadType = Nothing , _ccwsslUserId = Nothing- , _ccwsslBearerToken = Nothing , _ccwsslPageToken = Nothing , _ccwsslPageSize = Nothing , _ccwsslCallback = Nothing@@ -178,7 +166,7 @@ . _Coerce -- | V1 error format.-ccwsslXgafv :: Lens' CoursesCourseWorkStudentSubmissionsList (Maybe Text)+ccwsslXgafv :: Lens' CoursesCourseWorkStudentSubmissionsList (Maybe Xgafv) ccwsslXgafv = lens _ccwsslXgafv (\ s a -> s{_ccwsslXgafv = a}) @@ -195,10 +183,6 @@ = lens _ccwsslUploadProtocol (\ s a -> s{_ccwsslUploadProtocol = a}) --- | Pretty-print response.-ccwsslPp :: Lens' CoursesCourseWorkStudentSubmissionsList Bool-ccwsslPp = lens _ccwsslPp (\ s a -> s{_ccwsslPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwsslCourseId :: Lens' CoursesCourseWorkStudentSubmissionsList Text@@ -227,12 +211,6 @@ ccwsslUserId = lens _ccwsslUserId (\ s a -> s{_ccwsslUserId = a}) --- | OAuth bearer token.-ccwsslBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsList (Maybe Text)-ccwsslBearerToken- = lens _ccwsslBearerToken- (\ s a -> s{_ccwsslBearerToken = a})- -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.@@ -256,7 +234,7 @@ = lens _ccwsslCallback (\ s a -> s{_ccwsslCallback = a}) --- | Identifer of the student work to request. This may be set to the string+-- | Identifier of the student work to request. This may be set to the string -- literal \`\"-\"\` to request student work for all course work in the -- specified course. ccwsslCourseWorkId :: Lens' CoursesCourseWorkStudentSubmissionsList Text@@ -282,11 +260,9 @@ _ccwsslXgafv _ccwsslLate _ccwsslUploadProtocol- (Just _ccwsslPp) _ccwsslAccessToken _ccwsslUploadType _ccwsslUserId- _ccwsslBearerToken _ccwsslPageToken _ccwsslPageSize _ccwsslCallback
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/ModifyAttachments.hs view
@@ -46,12 +46,10 @@ -- * Request Lenses , ccwssmaXgafv , ccwssmaUploadProtocol- , ccwssmaPp , ccwssmaCourseId , ccwssmaAccessToken , ccwssmaUploadType , ccwssmaPayload- , ccwssmaBearerToken , ccwssmaId , ccwssmaCallback , ccwssmaCourseWorkId@@ -71,16 +69,14 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "modifyAttachments" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] ModifyAttachmentsRequest :>- Post '[JSON] StudentSubmission+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ModifyAttachmentsRequest :>+ Post '[JSON] StudentSubmission -- | Modifies attachments of student submission. Attachments may only be -- added to student submissions belonging to course work objects with a@@ -97,14 +93,12 @@ -- -- /See:/ 'coursesCourseWorkStudentSubmissionsModifyAttachments' smart constructor. data CoursesCourseWorkStudentSubmissionsModifyAttachments = CoursesCourseWorkStudentSubmissionsModifyAttachments'- { _ccwssmaXgafv :: !(Maybe Text)+ { _ccwssmaXgafv :: !(Maybe Xgafv) , _ccwssmaUploadProtocol :: !(Maybe Text)- , _ccwssmaPp :: !Bool , _ccwssmaCourseId :: !Text , _ccwssmaAccessToken :: !(Maybe Text) , _ccwssmaUploadType :: !(Maybe Text) , _ccwssmaPayload :: !ModifyAttachmentsRequest- , _ccwssmaBearerToken :: !(Maybe Text) , _ccwssmaId :: !Text , _ccwssmaCallback :: !(Maybe Text) , _ccwssmaCourseWorkId :: !Text@@ -118,8 +112,6 @@ -- -- * 'ccwssmaUploadProtocol' ----- * 'ccwssmaPp'--- -- * 'ccwssmaCourseId' -- -- * 'ccwssmaAccessToken'@@ -128,8 +120,6 @@ -- -- * 'ccwssmaPayload' ----- * 'ccwssmaBearerToken'--- -- * 'ccwssmaId' -- -- * 'ccwssmaCallback'@@ -145,19 +135,17 @@ CoursesCourseWorkStudentSubmissionsModifyAttachments' { _ccwssmaXgafv = Nothing , _ccwssmaUploadProtocol = Nothing- , _ccwssmaPp = True , _ccwssmaCourseId = pCcwssmaCourseId_ , _ccwssmaAccessToken = Nothing , _ccwssmaUploadType = Nothing , _ccwssmaPayload = pCcwssmaPayload_- , _ccwssmaBearerToken = Nothing , _ccwssmaId = pCcwssmaId_ , _ccwssmaCallback = Nothing , _ccwssmaCourseWorkId = pCcwssmaCourseWorkId_ } -- | V1 error format.-ccwssmaXgafv :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments (Maybe Text)+ccwssmaXgafv :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments (Maybe Xgafv) ccwssmaXgafv = lens _ccwssmaXgafv (\ s a -> s{_ccwssmaXgafv = a}) @@ -167,11 +155,6 @@ = lens _ccwssmaUploadProtocol (\ s a -> s{_ccwssmaUploadProtocol = a}) --- | Pretty-print response.-ccwssmaPp :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments Bool-ccwssmaPp- = lens _ccwssmaPp (\ s a -> s{_ccwssmaPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwssmaCourseId :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments Text@@ -197,12 +180,6 @@ = lens _ccwssmaPayload (\ s a -> s{_ccwssmaPayload = a}) --- | OAuth bearer token.-ccwssmaBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments (Maybe Text)-ccwssmaBearerToken- = lens _ccwssmaBearerToken- (\ s a -> s{_ccwssmaBearerToken = a})- -- | Identifier of the student submission. ccwssmaId :: Lens' CoursesCourseWorkStudentSubmissionsModifyAttachments Text ccwssmaId@@ -236,10 +213,8 @@ = go _ccwssmaCourseId _ccwssmaCourseWorkId _ccwssmaId _ccwssmaXgafv _ccwssmaUploadProtocol- (Just _ccwssmaPp) _ccwssmaAccessToken _ccwssmaUploadType- _ccwssmaBearerToken _ccwssmaCallback (Just AltJSON) _ccwssmaPayload
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Patch.hs view
@@ -47,12 +47,10 @@ , ccwsspXgafv , ccwsspUploadProtocol , ccwsspUpdateMask- , ccwsspPp , ccwsspCourseId , ccwsspAccessToken , ccwsspUploadType , ccwsspPayload- , ccwsspBearerToken , ccwsspId , ccwsspCallback , ccwsspCourseWorkId@@ -72,17 +70,15 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "updateMask" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] StudentSubmission :>- Patch '[JSON] StudentSubmission+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] StudentSubmission :>+ Patch '[JSON] StudentSubmission -- | Updates one or more fields of a student submission. See -- google.classroom.v1.StudentSubmission for details of which fields may be@@ -99,15 +95,13 @@ -- -- /See:/ 'coursesCourseWorkStudentSubmissionsPatch' smart constructor. data CoursesCourseWorkStudentSubmissionsPatch = CoursesCourseWorkStudentSubmissionsPatch'- { _ccwsspXgafv :: !(Maybe Text)+ { _ccwsspXgafv :: !(Maybe Xgafv) , _ccwsspUploadProtocol :: !(Maybe Text)- , _ccwsspUpdateMask :: !(Maybe Text)- , _ccwsspPp :: !Bool+ , _ccwsspUpdateMask :: !(Maybe GFieldMask) , _ccwsspCourseId :: !Text , _ccwsspAccessToken :: !(Maybe Text) , _ccwsspUploadType :: !(Maybe Text) , _ccwsspPayload :: !StudentSubmission- , _ccwsspBearerToken :: !(Maybe Text) , _ccwsspId :: !Text , _ccwsspCallback :: !(Maybe Text) , _ccwsspCourseWorkId :: !Text@@ -123,8 +117,6 @@ -- -- * 'ccwsspUpdateMask' ----- * 'ccwsspPp'--- -- * 'ccwsspCourseId' -- -- * 'ccwsspAccessToken'@@ -133,8 +125,6 @@ -- -- * 'ccwsspPayload' ----- * 'ccwsspBearerToken'--- -- * 'ccwsspId' -- -- * 'ccwsspCallback'@@ -151,19 +141,17 @@ { _ccwsspXgafv = Nothing , _ccwsspUploadProtocol = Nothing , _ccwsspUpdateMask = Nothing- , _ccwsspPp = True , _ccwsspCourseId = pCcwsspCourseId_ , _ccwsspAccessToken = Nothing , _ccwsspUploadType = Nothing , _ccwsspPayload = pCcwsspPayload_- , _ccwsspBearerToken = Nothing , _ccwsspId = pCcwsspId_ , _ccwsspCallback = Nothing , _ccwsspCourseWorkId = pCcwsspCourseWorkId_ } -- | V1 error format.-ccwsspXgafv :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Text)+ccwsspXgafv :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Xgafv) ccwsspXgafv = lens _ccwsspXgafv (\ s a -> s{_ccwsspXgafv = a}) @@ -177,15 +165,11 @@ -- This field is required to do an update. The update fails if invalid -- fields are specified. The following fields may be specified by teachers: -- * \`draft_grade\` * \`assigned_grade\`-ccwsspUpdateMask :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Text)+ccwsspUpdateMask :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe GFieldMask) ccwsspUpdateMask = lens _ccwsspUpdateMask (\ s a -> s{_ccwsspUpdateMask = a}) --- | Pretty-print response.-ccwsspPp :: Lens' CoursesCourseWorkStudentSubmissionsPatch Bool-ccwsspPp = lens _ccwsspPp (\ s a -> s{_ccwsspPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwsspCourseId :: Lens' CoursesCourseWorkStudentSubmissionsPatch Text@@ -211,12 +195,6 @@ = lens _ccwsspPayload (\ s a -> s{_ccwsspPayload = a}) --- | OAuth bearer token.-ccwsspBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsPatch (Maybe Text)-ccwsspBearerToken- = lens _ccwsspBearerToken- (\ s a -> s{_ccwsspBearerToken = a})- -- | Identifier of the student submission. ccwsspId :: Lens' CoursesCourseWorkStudentSubmissionsPatch Text ccwsspId = lens _ccwsspId (\ s a -> s{_ccwsspId = a})@@ -247,10 +225,8 @@ _ccwsspXgafv _ccwsspUploadProtocol _ccwsspUpdateMask- (Just _ccwsspPp) _ccwsspAccessToken _ccwsspUploadType- _ccwsspBearerToken _ccwsspCallback (Just AltJSON) _ccwsspPayload
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Reclaim.hs view
@@ -22,7 +22,7 @@ -- -- Reclaims a student submission on behalf of the student that owns it. -- Reclaiming a student submission transfers ownership of attached Drive--- files to the student and update the submission state. Only the student+-- files to the student and updates the submission state. Only the student -- that owns the requested student submission may call this method, and -- only for a student submission that has been turned in. This request must -- be made by the Developer Console project of the [OAuth client@@ -47,17 +47,15 @@ , CoursesCourseWorkStudentSubmissionsReclaim -- * Request Lenses- , couXgafv- , couUploadProtocol- , couPp- , couCourseId- , couAccessToken- , couUploadType- , couPayload- , couBearerToken- , couId- , couCallback- , couCourseWorkId+ , ccwssrcXgafv+ , ccwssrcUploadProtocol+ , ccwssrcCourseId+ , ccwssrcAccessToken+ , ccwssrcUploadType+ , ccwssrcPayload+ , ccwssrcId+ , ccwssrcCallback+ , ccwssrcCourseWorkId ) where import Network.Google.Classroom.Types@@ -74,21 +72,18 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "reclaim" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON]- ReclaimStudentSubmissionRequest- :> Post '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ReclaimStudentSubmissionRequest+ :> Post '[JSON] Empty -- | Reclaims a student submission on behalf of the student that owns it. -- Reclaiming a student submission transfers ownership of attached Drive--- files to the student and update the submission state. Only the student+-- files to the student and updates the submission state. Only the student -- that owns the requested student submission may call this method, and -- only for a student submission that has been turned in. This request must -- be made by the Developer Console project of the [OAuth client@@ -104,122 +99,109 @@ -- -- /See:/ 'coursesCourseWorkStudentSubmissionsReclaim' smart constructor. data CoursesCourseWorkStudentSubmissionsReclaim = CoursesCourseWorkStudentSubmissionsReclaim'- { _couXgafv :: !(Maybe Text)- , _couUploadProtocol :: !(Maybe Text)- , _couPp :: !Bool- , _couCourseId :: !Text- , _couAccessToken :: !(Maybe Text)- , _couUploadType :: !(Maybe Text)- , _couPayload :: !ReclaimStudentSubmissionRequest- , _couBearerToken :: !(Maybe Text)- , _couId :: !Text- , _couCallback :: !(Maybe Text)- , _couCourseWorkId :: !Text+ { _ccwssrcXgafv :: !(Maybe Xgafv)+ , _ccwssrcUploadProtocol :: !(Maybe Text)+ , _ccwssrcCourseId :: !Text+ , _ccwssrcAccessToken :: !(Maybe Text)+ , _ccwssrcUploadType :: !(Maybe Text)+ , _ccwssrcPayload :: !ReclaimStudentSubmissionRequest+ , _ccwssrcId :: !Text+ , _ccwssrcCallback :: !(Maybe Text)+ , _ccwssrcCourseWorkId :: !Text } deriving (Eq,Show,Data,Typeable,Generic) -- | Creates a value of 'CoursesCourseWorkStudentSubmissionsReclaim' with the minimum fields required to make a request. -- -- Use one of the following lenses to modify other fields as desired: ----- * 'couXgafv'------ * 'couUploadProtocol'------ * 'couPp'+-- * 'ccwssrcXgafv' ----- * 'couCourseId'+-- * 'ccwssrcUploadProtocol' ----- * 'couAccessToken'+-- * 'ccwssrcCourseId' ----- * 'couUploadType'+-- * 'ccwssrcAccessToken' ----- * 'couPayload'+-- * 'ccwssrcUploadType' ----- * 'couBearerToken'+-- * 'ccwssrcPayload' ----- * 'couId'+-- * 'ccwssrcId' ----- * 'couCallback'+-- * 'ccwssrcCallback' ----- * 'couCourseWorkId'+-- * 'ccwssrcCourseWorkId' coursesCourseWorkStudentSubmissionsReclaim- :: Text -- ^ 'couCourseId'- -> ReclaimStudentSubmissionRequest -- ^ 'couPayload'- -> Text -- ^ 'couId'- -> Text -- ^ 'couCourseWorkId'+ :: Text -- ^ 'ccwssrcCourseId'+ -> ReclaimStudentSubmissionRequest -- ^ 'ccwssrcPayload'+ -> Text -- ^ 'ccwssrcId'+ -> Text -- ^ 'ccwssrcCourseWorkId' -> CoursesCourseWorkStudentSubmissionsReclaim-coursesCourseWorkStudentSubmissionsReclaim pCouCourseId_ pCouPayload_ pCouId_ pCouCourseWorkId_ =+coursesCourseWorkStudentSubmissionsReclaim pCcwssrcCourseId_ pCcwssrcPayload_ pCcwssrcId_ pCcwssrcCourseWorkId_ = CoursesCourseWorkStudentSubmissionsReclaim'- { _couXgafv = Nothing- , _couUploadProtocol = Nothing- , _couPp = True- , _couCourseId = pCouCourseId_- , _couAccessToken = Nothing- , _couUploadType = Nothing- , _couPayload = pCouPayload_- , _couBearerToken = Nothing- , _couId = pCouId_- , _couCallback = Nothing- , _couCourseWorkId = pCouCourseWorkId_+ { _ccwssrcXgafv = Nothing+ , _ccwssrcUploadProtocol = Nothing+ , _ccwssrcCourseId = pCcwssrcCourseId_+ , _ccwssrcAccessToken = Nothing+ , _ccwssrcUploadType = Nothing+ , _ccwssrcPayload = pCcwssrcPayload_+ , _ccwssrcId = pCcwssrcId_+ , _ccwssrcCallback = Nothing+ , _ccwssrcCourseWorkId = pCcwssrcCourseWorkId_ } -- | V1 error format.-couXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)-couXgafv = lens _couXgafv (\ s a -> s{_couXgafv = a})+ccwssrcXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Xgafv)+ccwssrcXgafv+ = lens _ccwssrcXgafv (\ s a -> s{_ccwssrcXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").-couUploadProtocol :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)-couUploadProtocol- = lens _couUploadProtocol- (\ s a -> s{_couUploadProtocol = a})---- | Pretty-print response.-couPp :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Bool-couPp = lens _couPp (\ s a -> s{_couPp = a})+ccwssrcUploadProtocol :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)+ccwssrcUploadProtocol+ = lens _ccwssrcUploadProtocol+ (\ s a -> s{_ccwssrcUploadProtocol = a}) -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias.-couCourseId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text-couCourseId- = lens _couCourseId (\ s a -> s{_couCourseId = a})+ccwssrcCourseId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text+ccwssrcCourseId+ = lens _ccwssrcCourseId+ (\ s a -> s{_ccwssrcCourseId = a}) -- | OAuth access token.-couAccessToken :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)-couAccessToken- = lens _couAccessToken- (\ s a -> s{_couAccessToken = a})+ccwssrcAccessToken :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)+ccwssrcAccessToken+ = lens _ccwssrcAccessToken+ (\ s a -> s{_ccwssrcAccessToken = a}) -- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").-couUploadType :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)-couUploadType- = lens _couUploadType- (\ s a -> s{_couUploadType = a})+ccwssrcUploadType :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)+ccwssrcUploadType+ = lens _ccwssrcUploadType+ (\ s a -> s{_ccwssrcUploadType = a}) -- | Multipart request metadata.-couPayload :: Lens' CoursesCourseWorkStudentSubmissionsReclaim ReclaimStudentSubmissionRequest-couPayload- = lens _couPayload (\ s a -> s{_couPayload = a})---- | OAuth bearer token.-couBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)-couBearerToken- = lens _couBearerToken- (\ s a -> s{_couBearerToken = a})+ccwssrcPayload :: Lens' CoursesCourseWorkStudentSubmissionsReclaim ReclaimStudentSubmissionRequest+ccwssrcPayload+ = lens _ccwssrcPayload+ (\ s a -> s{_ccwssrcPayload = a}) -- | Identifier of the student submission.-couId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text-couId = lens _couId (\ s a -> s{_couId = a})+ccwssrcId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text+ccwssrcId+ = lens _ccwssrcId (\ s a -> s{_ccwssrcId = a}) -- | JSONP-couCallback :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)-couCallback- = lens _couCallback (\ s a -> s{_couCallback = a})+ccwssrcCallback :: Lens' CoursesCourseWorkStudentSubmissionsReclaim (Maybe Text)+ccwssrcCallback+ = lens _ccwssrcCallback+ (\ s a -> s{_ccwssrcCallback = a}) -- | Identifier of the course work.-couCourseWorkId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text-couCourseWorkId- = lens _couCourseWorkId- (\ s a -> s{_couCourseWorkId = a})+ccwssrcCourseWorkId :: Lens' CoursesCourseWorkStudentSubmissionsReclaim Text+ccwssrcCourseWorkId+ = lens _ccwssrcCourseWorkId+ (\ s a -> s{_ccwssrcCourseWorkId = a}) instance GoogleRequest CoursesCourseWorkStudentSubmissionsReclaim where@@ -231,15 +213,14 @@ '["https://www.googleapis.com/auth/classroom.coursework.me"] requestClient CoursesCourseWorkStudentSubmissionsReclaim'{..}- = go _couCourseId _couCourseWorkId _couId _couXgafv- _couUploadProtocol- (Just _couPp)- _couAccessToken- _couUploadType- _couBearerToken- _couCallback+ = go _ccwssrcCourseId _ccwssrcCourseWorkId _ccwssrcId+ _ccwssrcXgafv+ _ccwssrcUploadProtocol+ _ccwssrcAccessToken+ _ccwssrcUploadType+ _ccwssrcCallback (Just AltJSON)- _couPayload+ _ccwssrcPayload classroomService where go = buildClient
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/Return.hs view
@@ -48,12 +48,10 @@ -- * Request Lenses , ccwssrXgafv , ccwssrUploadProtocol- , ccwssrPp , ccwssrCourseId , ccwssrAccessToken , ccwssrUploadType , ccwssrPayload- , ccwssrBearerToken , ccwssrId , ccwssrCallback , ccwssrCourseWorkId@@ -73,17 +71,14 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "return" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON]- ReturnStudentSubmissionRequest- :> Post '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] ReturnStudentSubmissionRequest :>+ Post '[JSON] Empty -- | Returns a student submission. Returning a student submission transfers -- ownership of attached Drive files to the student and may also update the@@ -102,14 +97,12 @@ -- -- /See:/ 'coursesCourseWorkStudentSubmissionsReturn' smart constructor. data CoursesCourseWorkStudentSubmissionsReturn = CoursesCourseWorkStudentSubmissionsReturn'- { _ccwssrXgafv :: !(Maybe Text)+ { _ccwssrXgafv :: !(Maybe Xgafv) , _ccwssrUploadProtocol :: !(Maybe Text)- , _ccwssrPp :: !Bool , _ccwssrCourseId :: !Text , _ccwssrAccessToken :: !(Maybe Text) , _ccwssrUploadType :: !(Maybe Text) , _ccwssrPayload :: !ReturnStudentSubmissionRequest- , _ccwssrBearerToken :: !(Maybe Text) , _ccwssrId :: !Text , _ccwssrCallback :: !(Maybe Text) , _ccwssrCourseWorkId :: !Text@@ -123,8 +116,6 @@ -- -- * 'ccwssrUploadProtocol' ----- * 'ccwssrPp'--- -- * 'ccwssrCourseId' -- -- * 'ccwssrAccessToken'@@ -133,8 +124,6 @@ -- -- * 'ccwssrPayload' ----- * 'ccwssrBearerToken'--- -- * 'ccwssrId' -- -- * 'ccwssrCallback'@@ -150,19 +139,17 @@ CoursesCourseWorkStudentSubmissionsReturn' { _ccwssrXgafv = Nothing , _ccwssrUploadProtocol = Nothing- , _ccwssrPp = True , _ccwssrCourseId = pCcwssrCourseId_ , _ccwssrAccessToken = Nothing , _ccwssrUploadType = Nothing , _ccwssrPayload = pCcwssrPayload_- , _ccwssrBearerToken = Nothing , _ccwssrId = pCcwssrId_ , _ccwssrCallback = Nothing , _ccwssrCourseWorkId = pCcwssrCourseWorkId_ } -- | V1 error format.-ccwssrXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReturn (Maybe Text)+ccwssrXgafv :: Lens' CoursesCourseWorkStudentSubmissionsReturn (Maybe Xgafv) ccwssrXgafv = lens _ccwssrXgafv (\ s a -> s{_ccwssrXgafv = a}) @@ -172,10 +159,6 @@ = lens _ccwssrUploadProtocol (\ s a -> s{_ccwssrUploadProtocol = a}) --- | Pretty-print response.-ccwssrPp :: Lens' CoursesCourseWorkStudentSubmissionsReturn Bool-ccwssrPp = lens _ccwssrPp (\ s a -> s{_ccwssrPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwssrCourseId :: Lens' CoursesCourseWorkStudentSubmissionsReturn Text@@ -201,12 +184,6 @@ = lens _ccwssrPayload (\ s a -> s{_ccwssrPayload = a}) --- | OAuth bearer token.-ccwssrBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsReturn (Maybe Text)-ccwssrBearerToken- = lens _ccwssrBearerToken- (\ s a -> s{_ccwssrBearerToken = a})- -- | Identifier of the student submission. ccwssrId :: Lens' CoursesCourseWorkStudentSubmissionsReturn Text ccwssrId = lens _ccwssrId (\ s a -> s{_ccwssrId = a})@@ -235,10 +212,8 @@ = go _ccwssrCourseId _ccwssrCourseWorkId _ccwssrId _ccwssrXgafv _ccwssrUploadProtocol- (Just _ccwssrPp) _ccwssrAccessToken _ccwssrUploadType- _ccwssrBearerToken _ccwssrCallback (Just AltJSON) _ccwssrPayload
gen/Network/Google/Resource/Classroom/Courses/CourseWork/StudentSubmissions/TurnIn.hs view
@@ -46,12 +46,10 @@ -- * Request Lenses , ccwsstiXgafv , ccwsstiUploadProtocol- , ccwsstiPp , ccwsstiCourseId , ccwsstiAccessToken , ccwsstiUploadType , ccwsstiPayload- , ccwsstiBearerToken , ccwsstiId , ccwsstiCallback , ccwsstiCourseWorkId@@ -71,17 +69,14 @@ Capture "courseWorkId" Text :> "studentSubmissions" :> CaptureMode "id" "turnIn" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON]- TurnInStudentSubmissionRequest- :> Post '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] TurnInStudentSubmissionRequest :>+ Post '[JSON] Empty -- | Turns in a student submission. Turning in a student submission transfers -- ownership of attached Drive files to the teacher and may also update the@@ -98,14 +93,12 @@ -- -- /See:/ 'coursesCourseWorkStudentSubmissionsTurnIn' smart constructor. data CoursesCourseWorkStudentSubmissionsTurnIn = CoursesCourseWorkStudentSubmissionsTurnIn'- { _ccwsstiXgafv :: !(Maybe Text)+ { _ccwsstiXgafv :: !(Maybe Xgafv) , _ccwsstiUploadProtocol :: !(Maybe Text)- , _ccwsstiPp :: !Bool , _ccwsstiCourseId :: !Text , _ccwsstiAccessToken :: !(Maybe Text) , _ccwsstiUploadType :: !(Maybe Text) , _ccwsstiPayload :: !TurnInStudentSubmissionRequest- , _ccwsstiBearerToken :: !(Maybe Text) , _ccwsstiId :: !Text , _ccwsstiCallback :: !(Maybe Text) , _ccwsstiCourseWorkId :: !Text@@ -119,8 +112,6 @@ -- -- * 'ccwsstiUploadProtocol' ----- * 'ccwsstiPp'--- -- * 'ccwsstiCourseId' -- -- * 'ccwsstiAccessToken'@@ -129,8 +120,6 @@ -- -- * 'ccwsstiPayload' ----- * 'ccwsstiBearerToken'--- -- * 'ccwsstiId' -- -- * 'ccwsstiCallback'@@ -146,19 +135,17 @@ CoursesCourseWorkStudentSubmissionsTurnIn' { _ccwsstiXgafv = Nothing , _ccwsstiUploadProtocol = Nothing- , _ccwsstiPp = True , _ccwsstiCourseId = pCcwsstiCourseId_ , _ccwsstiAccessToken = Nothing , _ccwsstiUploadType = Nothing , _ccwsstiPayload = pCcwsstiPayload_- , _ccwsstiBearerToken = Nothing , _ccwsstiId = pCcwsstiId_ , _ccwsstiCallback = Nothing , _ccwsstiCourseWorkId = pCcwsstiCourseWorkId_ } -- | V1 error format.-ccwsstiXgafv :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn (Maybe Text)+ccwsstiXgafv :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn (Maybe Xgafv) ccwsstiXgafv = lens _ccwsstiXgafv (\ s a -> s{_ccwsstiXgafv = a}) @@ -168,11 +155,6 @@ = lens _ccwsstiUploadProtocol (\ s a -> s{_ccwsstiUploadProtocol = a}) --- | Pretty-print response.-ccwsstiPp :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn Bool-ccwsstiPp- = lens _ccwsstiPp (\ s a -> s{_ccwsstiPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ccwsstiCourseId :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn Text@@ -198,12 +180,6 @@ = lens _ccwsstiPayload (\ s a -> s{_ccwsstiPayload = a}) --- | OAuth bearer token.-ccwsstiBearerToken :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn (Maybe Text)-ccwsstiBearerToken- = lens _ccwsstiBearerToken- (\ s a -> s{_ccwsstiBearerToken = a})- -- | Identifier of the student submission. ccwsstiId :: Lens' CoursesCourseWorkStudentSubmissionsTurnIn Text ccwsstiId@@ -233,10 +209,8 @@ = go _ccwsstiCourseId _ccwsstiCourseWorkId _ccwsstiId _ccwsstiXgafv _ccwsstiUploadProtocol- (Just _ccwsstiPp) _ccwsstiAccessToken _ccwsstiUploadType- _ccwsstiBearerToken _ccwsstiCallback (Just AltJSON) _ccwsstiPayload
gen/Network/Google/Resource/Classroom/Courses/Create.hs view
@@ -42,11 +42,9 @@ -- * Request Lenses , ccXgafv , ccUploadProtocol- , ccPp , ccAccessToken , ccUploadType , ccPayload- , ccBearerToken , ccCallback ) where @@ -58,15 +56,13 @@ type CoursesCreateResource = "v1" :> "courses" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] Course :> Post '[JSON] Course+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Course :> Post '[JSON] Course -- | Creates a course. The user specified in \`ownerId\` is the owner of the -- created course and added as a teacher. This method returns the following@@ -79,13 +75,11 @@ -- -- /See:/ 'coursesCreate' smart constructor. data CoursesCreate = CoursesCreate'- { _ccXgafv :: !(Maybe Text)+ { _ccXgafv :: !(Maybe Xgafv) , _ccUploadProtocol :: !(Maybe Text)- , _ccPp :: !Bool , _ccAccessToken :: !(Maybe Text) , _ccUploadType :: !(Maybe Text) , _ccPayload :: !Course- , _ccBearerToken :: !(Maybe Text) , _ccCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -97,16 +91,12 @@ -- -- * 'ccUploadProtocol' ----- * 'ccPp'--- -- * 'ccAccessToken' -- -- * 'ccUploadType' -- -- * 'ccPayload' ----- * 'ccBearerToken'--- -- * 'ccCallback' coursesCreate :: Course -- ^ 'ccPayload'@@ -115,16 +105,14 @@ CoursesCreate' { _ccXgafv = Nothing , _ccUploadProtocol = Nothing- , _ccPp = True , _ccAccessToken = Nothing , _ccUploadType = Nothing , _ccPayload = pCcPayload_- , _ccBearerToken = Nothing , _ccCallback = Nothing } -- | V1 error format.-ccXgafv :: Lens' CoursesCreate (Maybe Text)+ccXgafv :: Lens' CoursesCreate (Maybe Xgafv) ccXgafv = lens _ccXgafv (\ s a -> s{_ccXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -133,10 +121,6 @@ = lens _ccUploadProtocol (\ s a -> s{_ccUploadProtocol = a}) --- | Pretty-print response.-ccPp :: Lens' CoursesCreate Bool-ccPp = lens _ccPp (\ s a -> s{_ccPp = a})- -- | OAuth access token. ccAccessToken :: Lens' CoursesCreate (Maybe Text) ccAccessToken@@ -153,12 +137,6 @@ ccPayload = lens _ccPayload (\ s a -> s{_ccPayload = a}) --- | OAuth bearer token.-ccBearerToken :: Lens' CoursesCreate (Maybe Text)-ccBearerToken- = lens _ccBearerToken- (\ s a -> s{_ccBearerToken = a})- -- | JSONP ccCallback :: Lens' CoursesCreate (Maybe Text) ccCallback@@ -169,10 +147,8 @@ type Scopes CoursesCreate = '["https://www.googleapis.com/auth/classroom.courses"] requestClient CoursesCreate'{..}- = go _ccXgafv _ccUploadProtocol (Just _ccPp)- _ccAccessToken+ = go _ccXgafv _ccUploadProtocol _ccAccessToken _ccUploadType- _ccBearerToken _ccCallback (Just AltJSON) _ccPayload
gen/Network/Google/Resource/Classroom/Courses/Delete.hs view
@@ -38,10 +38,8 @@ -- * Request Lenses , cdXgafv , cdUploadProtocol- , cdPp , cdAccessToken , cdUploadType- , cdBearerToken , cdId , cdCallback ) where@@ -55,14 +53,12 @@ "v1" :> "courses" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes a course. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to delete@@ -71,12 +67,10 @@ -- -- /See:/ 'coursesDelete' smart constructor. data CoursesDelete = CoursesDelete'- { _cdXgafv :: !(Maybe Text)+ { _cdXgafv :: !(Maybe Xgafv) , _cdUploadProtocol :: !(Maybe Text)- , _cdPp :: !Bool , _cdAccessToken :: !(Maybe Text) , _cdUploadType :: !(Maybe Text)- , _cdBearerToken :: !(Maybe Text) , _cdId :: !Text , _cdCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -89,14 +83,10 @@ -- -- * 'cdUploadProtocol' ----- * 'cdPp'--- -- * 'cdAccessToken' -- -- * 'cdUploadType' ----- * 'cdBearerToken'--- -- * 'cdId' -- -- * 'cdCallback'@@ -107,16 +97,14 @@ CoursesDelete' { _cdXgafv = Nothing , _cdUploadProtocol = Nothing- , _cdPp = True , _cdAccessToken = Nothing , _cdUploadType = Nothing- , _cdBearerToken = Nothing , _cdId = pCdId_ , _cdCallback = Nothing } -- | V1 error format.-cdXgafv :: Lens' CoursesDelete (Maybe Text)+cdXgafv :: Lens' CoursesDelete (Maybe Xgafv) cdXgafv = lens _cdXgafv (\ s a -> s{_cdXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -125,10 +113,6 @@ = lens _cdUploadProtocol (\ s a -> s{_cdUploadProtocol = a}) --- | Pretty-print response.-cdPp :: Lens' CoursesDelete Bool-cdPp = lens _cdPp (\ s a -> s{_cdPp = a})- -- | OAuth access token. cdAccessToken :: Lens' CoursesDelete (Maybe Text) cdAccessToken@@ -140,12 +124,6 @@ cdUploadType = lens _cdUploadType (\ s a -> s{_cdUploadType = a}) --- | OAuth bearer token.-cdBearerToken :: Lens' CoursesDelete (Maybe Text)-cdBearerToken- = lens _cdBearerToken- (\ s a -> s{_cdBearerToken = a})- -- | Identifier of the course to delete. This identifier can be either the -- Classroom-assigned identifier or an alias. cdId :: Lens' CoursesDelete Text@@ -161,10 +139,8 @@ type Scopes CoursesDelete = '["https://www.googleapis.com/auth/classroom.courses"] requestClient CoursesDelete'{..}- = go _cdId _cdXgafv _cdUploadProtocol (Just _cdPp)- _cdAccessToken+ = go _cdId _cdXgafv _cdUploadProtocol _cdAccessToken _cdUploadType- _cdBearerToken _cdCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/Get.hs view
@@ -38,10 +38,8 @@ -- * Request Lenses , cgXgafv , cgUploadProtocol- , cgPp , cgAccessToken , cgUploadType- , cgBearerToken , cgId , cgCallback ) where@@ -55,14 +53,12 @@ "v1" :> "courses" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Course+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Course -- | Returns a course. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to access@@ -71,12 +67,10 @@ -- -- /See:/ 'coursesGet' smart constructor. data CoursesGet = CoursesGet'- { _cgXgafv :: !(Maybe Text)+ { _cgXgafv :: !(Maybe Xgafv) , _cgUploadProtocol :: !(Maybe Text)- , _cgPp :: !Bool , _cgAccessToken :: !(Maybe Text) , _cgUploadType :: !(Maybe Text)- , _cgBearerToken :: !(Maybe Text) , _cgId :: !Text , _cgCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -89,14 +83,10 @@ -- -- * 'cgUploadProtocol' ----- * 'cgPp'--- -- * 'cgAccessToken' -- -- * 'cgUploadType' ----- * 'cgBearerToken'--- -- * 'cgId' -- -- * 'cgCallback'@@ -107,16 +97,14 @@ CoursesGet' { _cgXgafv = Nothing , _cgUploadProtocol = Nothing- , _cgPp = True , _cgAccessToken = Nothing , _cgUploadType = Nothing- , _cgBearerToken = Nothing , _cgId = pCgId_ , _cgCallback = Nothing } -- | V1 error format.-cgXgafv :: Lens' CoursesGet (Maybe Text)+cgXgafv :: Lens' CoursesGet (Maybe Xgafv) cgXgafv = lens _cgXgafv (\ s a -> s{_cgXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -125,10 +113,6 @@ = lens _cgUploadProtocol (\ s a -> s{_cgUploadProtocol = a}) --- | Pretty-print response.-cgPp :: Lens' CoursesGet Bool-cgPp = lens _cgPp (\ s a -> s{_cgPp = a})- -- | OAuth access token. cgAccessToken :: Lens' CoursesGet (Maybe Text) cgAccessToken@@ -140,12 +124,6 @@ cgUploadType = lens _cgUploadType (\ s a -> s{_cgUploadType = a}) --- | OAuth bearer token.-cgBearerToken :: Lens' CoursesGet (Maybe Text)-cgBearerToken- = lens _cgBearerToken- (\ s a -> s{_cgBearerToken = a})- -- | Identifier of the course to return. This identifier can be either the -- Classroom-assigned identifier or an alias. cgId :: Lens' CoursesGet Text@@ -162,10 +140,8 @@ '["https://www.googleapis.com/auth/classroom.courses", "https://www.googleapis.com/auth/classroom.courses.readonly"] requestClient CoursesGet'{..}- = go _cgId _cgXgafv _cgUploadProtocol (Just _cgPp)- _cgAccessToken+ = go _cgId _cgXgafv _cgUploadProtocol _cgAccessToken _cgUploadType- _cgBearerToken _cgCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/List.hs view
@@ -21,10 +21,12 @@ -- Portability : non-portable (GHC extensions) -- -- Returns a list of courses that the requesting user is permitted to view,--- restricted to those that match the request. This method returns the--- following error codes: * \`PERMISSION_DENIED\` for access errors. *--- \`INVALID_ARGUMENT\` if the query argument is malformed. * \`NOT_FOUND\`--- if any users specified in the query arguments do not exist.+-- restricted to those that match the request. Returned courses are ordered+-- by creation time, with the most recently created coming first. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` for+-- access errors. * \`INVALID_ARGUMENT\` if the query argument is+-- malformed. * \`NOT_FOUND\` if any users specified in the query arguments+-- do not exist. -- -- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.courses.list@. module Network.Google.Resource.Classroom.Courses.List@@ -40,11 +42,9 @@ , clStudentId , clXgafv , clUploadProtocol- , clPp , clAccessToken , clUploadType , clTeacherId- , clBearerToken , clPageToken , clPageSize , clCourseStates@@ -60,36 +60,34 @@ "v1" :> "courses" :> QueryParam "studentId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "teacherId" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParams "courseStates" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListCoursesResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "teacherId" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParams "courseStates" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListCoursesResponse -- | Returns a list of courses that the requesting user is permitted to view,--- restricted to those that match the request. This method returns the--- following error codes: * \`PERMISSION_DENIED\` for access errors. *--- \`INVALID_ARGUMENT\` if the query argument is malformed. * \`NOT_FOUND\`--- if any users specified in the query arguments do not exist.+-- restricted to those that match the request. Returned courses are ordered+-- by creation time, with the most recently created coming first. This+-- method returns the following error codes: * \`PERMISSION_DENIED\` for+-- access errors. * \`INVALID_ARGUMENT\` if the query argument is+-- malformed. * \`NOT_FOUND\` if any users specified in the query arguments+-- do not exist. -- -- /See:/ 'coursesList' smart constructor. data CoursesList = CoursesList' { _clStudentId :: !(Maybe Text)- , _clXgafv :: !(Maybe Text)+ , _clXgafv :: !(Maybe Xgafv) , _clUploadProtocol :: !(Maybe Text)- , _clPp :: !Bool , _clAccessToken :: !(Maybe Text) , _clUploadType :: !(Maybe Text) , _clTeacherId :: !(Maybe Text)- , _clBearerToken :: !(Maybe Text) , _clPageToken :: !(Maybe Text) , _clPageSize :: !(Maybe (Textual Int32)) , _clCourseStates :: !(Maybe [Text])@@ -106,16 +104,12 @@ -- -- * 'clUploadProtocol' ----- * 'clPp'--- -- * 'clAccessToken' -- -- * 'clUploadType' -- -- * 'clTeacherId' ----- * 'clBearerToken'--- -- * 'clPageToken' -- -- * 'clPageSize'@@ -130,11 +124,9 @@ { _clStudentId = Nothing , _clXgafv = Nothing , _clUploadProtocol = Nothing- , _clPp = True , _clAccessToken = Nothing , _clUploadType = Nothing , _clTeacherId = Nothing- , _clBearerToken = Nothing , _clPageToken = Nothing , _clPageSize = Nothing , _clCourseStates = Nothing@@ -150,7 +142,7 @@ = lens _clStudentId (\ s a -> s{_clStudentId = a}) -- | V1 error format.-clXgafv :: Lens' CoursesList (Maybe Text)+clXgafv :: Lens' CoursesList (Maybe Xgafv) clXgafv = lens _clXgafv (\ s a -> s{_clXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -159,10 +151,6 @@ = lens _clUploadProtocol (\ s a -> s{_clUploadProtocol = a}) --- | Pretty-print response.-clPp :: Lens' CoursesList Bool-clPp = lens _clPp (\ s a -> s{_clPp = a})- -- | OAuth access token. clAccessToken :: Lens' CoursesList (Maybe Text) clAccessToken@@ -182,12 +170,6 @@ clTeacherId = lens _clTeacherId (\ s a -> s{_clTeacherId = a}) --- | OAuth bearer token.-clBearerToken :: Lens' CoursesList (Maybe Text)-clBearerToken- = lens _clBearerToken- (\ s a -> s{_clBearerToken = a})- -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.@@ -203,7 +185,8 @@ = lens _clPageSize (\ s a -> s{_clPageSize = a}) . mapping _Coerce --- | Restricts returned courses to those in one of the specified states+-- | Restricts returned courses to those in one of the specified states The+-- default value is ACTIVE, ARCHIVED, PROVISIONED, DECLINED. clCourseStates :: Lens' CoursesList [Text] clCourseStates = lens _clCourseStates@@ -223,11 +206,9 @@ "https://www.googleapis.com/auth/classroom.courses.readonly"] requestClient CoursesList'{..} = go _clStudentId _clXgafv _clUploadProtocol- (Just _clPp) _clAccessToken _clUploadType _clTeacherId- _clBearerToken _clPageToken _clPageSize (_clCourseStates ^. _Default)
gen/Network/Google/Resource/Classroom/Courses/Patch.hs view
@@ -42,11 +42,9 @@ , cpXgafv , cpUploadProtocol , cpUpdateMask- , cpPp , cpAccessToken , cpUploadType , cpPayload- , cpBearerToken , cpId , cpCallback ) where@@ -60,16 +58,14 @@ "v1" :> "courses" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "updateMask" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] Course :> Patch '[JSON] Course+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Course :> Patch '[JSON] Course -- | Updates one or more fields in a course. This method returns the -- following error codes: * \`PERMISSION_DENIED\` if the requesting user is@@ -81,14 +77,12 @@ -- -- /See:/ 'coursesPatch' smart constructor. data CoursesPatch = CoursesPatch'- { _cpXgafv :: !(Maybe Text)+ { _cpXgafv :: !(Maybe Xgafv) , _cpUploadProtocol :: !(Maybe Text)- , _cpUpdateMask :: !(Maybe Text)- , _cpPp :: !Bool+ , _cpUpdateMask :: !(Maybe GFieldMask) , _cpAccessToken :: !(Maybe Text) , _cpUploadType :: !(Maybe Text) , _cpPayload :: !Course- , _cpBearerToken :: !(Maybe Text) , _cpId :: !Text , _cpCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -103,16 +97,12 @@ -- -- * 'cpUpdateMask' ----- * 'cpPp'--- -- * 'cpAccessToken' -- -- * 'cpUploadType' -- -- * 'cpPayload' ----- * 'cpBearerToken'--- -- * 'cpId' -- -- * 'cpCallback'@@ -125,17 +115,15 @@ { _cpXgafv = Nothing , _cpUploadProtocol = Nothing , _cpUpdateMask = Nothing- , _cpPp = True , _cpAccessToken = Nothing , _cpUploadType = Nothing , _cpPayload = pCpPayload_- , _cpBearerToken = Nothing , _cpId = pCpId_ , _cpCallback = Nothing } -- | V1 error format.-cpXgafv :: Lens' CoursesPatch (Maybe Text)+cpXgafv :: Lens' CoursesPatch (Maybe Xgafv) cpXgafv = lens _cpXgafv (\ s a -> s{_cpXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -147,17 +135,15 @@ -- | Mask that identifies which fields on the course to update. This field is -- required to do an update. The update will fail if invalid fields are -- specified. The following fields are valid: * \`name\` * \`section\` *--- \`descriptionHeading\` * \`description\` * \`room\` * \`courseState\`--- When set in a query parameter, this field should be specified as--- \`updateMask=,,...\`-cpUpdateMask :: Lens' CoursesPatch (Maybe Text)+-- \`descriptionHeading\` * \`description\` * \`room\` * \`courseState\` *+-- \`ownerId\` Note: patches to ownerId are treated as being effective+-- immediately, but in practice it may take some time for the ownership+-- transfer of all affected resources to complete. When set in a query+-- parameter, this field should be specified as \`updateMask=,,...\`+cpUpdateMask :: Lens' CoursesPatch (Maybe GFieldMask) cpUpdateMask = lens _cpUpdateMask (\ s a -> s{_cpUpdateMask = a}) --- | Pretty-print response.-cpPp :: Lens' CoursesPatch Bool-cpPp = lens _cpPp (\ s a -> s{_cpPp = a})- -- | OAuth access token. cpAccessToken :: Lens' CoursesPatch (Maybe Text) cpAccessToken@@ -174,12 +160,6 @@ cpPayload = lens _cpPayload (\ s a -> s{_cpPayload = a}) --- | OAuth bearer token.-cpBearerToken :: Lens' CoursesPatch (Maybe Text)-cpBearerToken- = lens _cpBearerToken- (\ s a -> s{_cpBearerToken = a})- -- | Identifier of the course to update. This identifier can be either the -- Classroom-assigned identifier or an alias. cpId :: Lens' CoursesPatch Text@@ -196,10 +176,8 @@ '["https://www.googleapis.com/auth/classroom.courses"] requestClient CoursesPatch'{..} = go _cpId _cpXgafv _cpUploadProtocol _cpUpdateMask- (Just _cpPp) _cpAccessToken _cpUploadType- _cpBearerToken _cpCallback (Just AltJSON) _cpPayload
gen/Network/Google/Resource/Classroom/Courses/Students/Create.hs view
@@ -43,13 +43,11 @@ -- * Request Lenses , cscXgafv , cscUploadProtocol- , cscPp , cscCourseId , cscAccessToken , cscUploadType , cscPayload , cscEnrollmentCode- , cscBearerToken , cscCallback ) where @@ -63,16 +61,14 @@ "courses" :> Capture "courseId" Text :> "students" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "enrollmentCode" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] Student :> Post '[JSON] Student+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "enrollmentCode" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Student :> Post '[JSON] Student -- | Adds a user as a student of a course. This method returns the following -- error codes: * \`PERMISSION_DENIED\` if the requesting user is not@@ -86,15 +82,13 @@ -- -- /See:/ 'coursesStudentsCreate' smart constructor. data CoursesStudentsCreate = CoursesStudentsCreate'- { _cscXgafv :: !(Maybe Text)+ { _cscXgafv :: !(Maybe Xgafv) , _cscUploadProtocol :: !(Maybe Text)- , _cscPp :: !Bool , _cscCourseId :: !Text , _cscAccessToken :: !(Maybe Text) , _cscUploadType :: !(Maybe Text) , _cscPayload :: !Student , _cscEnrollmentCode :: !(Maybe Text)- , _cscBearerToken :: !(Maybe Text) , _cscCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -106,8 +100,6 @@ -- -- * 'cscUploadProtocol' ----- * 'cscPp'--- -- * 'cscCourseId' -- -- * 'cscAccessToken'@@ -118,8 +110,6 @@ -- -- * 'cscEnrollmentCode' ----- * 'cscBearerToken'--- -- * 'cscCallback' coursesStudentsCreate :: Text -- ^ 'cscCourseId'@@ -129,18 +119,16 @@ CoursesStudentsCreate' { _cscXgafv = Nothing , _cscUploadProtocol = Nothing- , _cscPp = True , _cscCourseId = pCscCourseId_ , _cscAccessToken = Nothing , _cscUploadType = Nothing , _cscPayload = pCscPayload_ , _cscEnrollmentCode = Nothing- , _cscBearerToken = Nothing , _cscCallback = Nothing } -- | V1 error format.-cscXgafv :: Lens' CoursesStudentsCreate (Maybe Text)+cscXgafv :: Lens' CoursesStudentsCreate (Maybe Xgafv) cscXgafv = lens _cscXgafv (\ s a -> s{_cscXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -149,10 +137,6 @@ = lens _cscUploadProtocol (\ s a -> s{_cscUploadProtocol = a}) --- | Pretty-print response.-cscPp :: Lens' CoursesStudentsCreate Bool-cscPp = lens _cscPp (\ s a -> s{_cscPp = a})- -- | Identifier of the course to create the student in. This identifier can -- be either the Classroom-assigned identifier or an alias. cscCourseId :: Lens' CoursesStudentsCreate Text@@ -185,12 +169,6 @@ = lens _cscEnrollmentCode (\ s a -> s{_cscEnrollmentCode = a}) --- | OAuth bearer token.-cscBearerToken :: Lens' CoursesStudentsCreate (Maybe Text)-cscBearerToken- = lens _cscBearerToken- (\ s a -> s{_cscBearerToken = a})- -- | JSONP cscCallback :: Lens' CoursesStudentsCreate (Maybe Text) cscCallback@@ -204,11 +182,9 @@ "https://www.googleapis.com/auth/classroom.rosters"] requestClient CoursesStudentsCreate'{..} = go _cscCourseId _cscXgafv _cscUploadProtocol- (Just _cscPp) _cscAccessToken _cscUploadType _cscEnrollmentCode- _cscBearerToken _cscCallback (Just AltJSON) _cscPayload
gen/Network/Google/Resource/Classroom/Courses/Students/Delete.hs view
@@ -39,12 +39,10 @@ -- * Request Lenses , csdXgafv , csdUploadProtocol- , csdPp , csdCourseId , csdAccessToken , csdUploadType , csdUserId- , csdBearerToken , csdCallback ) where @@ -59,14 +57,12 @@ Capture "courseId" Text :> "students" :> Capture "userId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes a student of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted@@ -76,14 +72,12 @@ -- -- /See:/ 'coursesStudentsDelete' smart constructor. data CoursesStudentsDelete = CoursesStudentsDelete'- { _csdXgafv :: !(Maybe Text)+ { _csdXgafv :: !(Maybe Xgafv) , _csdUploadProtocol :: !(Maybe Text)- , _csdPp :: !Bool , _csdCourseId :: !Text , _csdAccessToken :: !(Maybe Text) , _csdUploadType :: !(Maybe Text) , _csdUserId :: !Text- , _csdBearerToken :: !(Maybe Text) , _csdCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -95,8 +89,6 @@ -- -- * 'csdUploadProtocol' ----- * 'csdPp'--- -- * 'csdCourseId' -- -- * 'csdAccessToken'@@ -105,8 +97,6 @@ -- -- * 'csdUserId' ----- * 'csdBearerToken'--- -- * 'csdCallback' coursesStudentsDelete :: Text -- ^ 'csdCourseId'@@ -116,17 +106,15 @@ CoursesStudentsDelete' { _csdXgafv = Nothing , _csdUploadProtocol = Nothing- , _csdPp = True , _csdCourseId = pCsdCourseId_ , _csdAccessToken = Nothing , _csdUploadType = Nothing , _csdUserId = pCsdUserId_- , _csdBearerToken = Nothing , _csdCallback = Nothing } -- | V1 error format.-csdXgafv :: Lens' CoursesStudentsDelete (Maybe Text)+csdXgafv :: Lens' CoursesStudentsDelete (Maybe Xgafv) csdXgafv = lens _csdXgafv (\ s a -> s{_csdXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -135,10 +123,6 @@ = lens _csdUploadProtocol (\ s a -> s{_csdUploadProtocol = a}) --- | Pretty-print response.-csdPp :: Lens' CoursesStudentsDelete Bool-csdPp = lens _csdPp (\ s a -> s{_csdPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. csdCourseId :: Lens' CoursesStudentsDelete Text@@ -164,12 +148,6 @@ csdUserId = lens _csdUserId (\ s a -> s{_csdUserId = a}) --- | OAuth bearer token.-csdBearerToken :: Lens' CoursesStudentsDelete (Maybe Text)-csdBearerToken- = lens _csdBearerToken- (\ s a -> s{_csdBearerToken = a})- -- | JSONP csdCallback :: Lens' CoursesStudentsDelete (Maybe Text) csdCallback@@ -182,10 +160,8 @@ requestClient CoursesStudentsDelete'{..} = go _csdCourseId _csdUserId _csdXgafv _csdUploadProtocol- (Just _csdPp) _csdAccessToken _csdUploadType- _csdBearerToken _csdCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/Students/Get.hs view
@@ -39,12 +39,10 @@ -- * Request Lenses , csgXgafv , csgUploadProtocol- , csgPp , csgCourseId , csgAccessToken , csgUploadType , csgUserId- , csgBearerToken , csgCallback ) where @@ -59,14 +57,12 @@ Capture "courseId" Text :> "students" :> Capture "userId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Student+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Student -- | Returns a student of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted@@ -76,14 +72,12 @@ -- -- /See:/ 'coursesStudentsGet' smart constructor. data CoursesStudentsGet = CoursesStudentsGet'- { _csgXgafv :: !(Maybe Text)+ { _csgXgafv :: !(Maybe Xgafv) , _csgUploadProtocol :: !(Maybe Text)- , _csgPp :: !Bool , _csgCourseId :: !Text , _csgAccessToken :: !(Maybe Text) , _csgUploadType :: !(Maybe Text) , _csgUserId :: !Text- , _csgBearerToken :: !(Maybe Text) , _csgCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -95,8 +89,6 @@ -- -- * 'csgUploadProtocol' ----- * 'csgPp'--- -- * 'csgCourseId' -- -- * 'csgAccessToken'@@ -105,8 +97,6 @@ -- -- * 'csgUserId' ----- * 'csgBearerToken'--- -- * 'csgCallback' coursesStudentsGet :: Text -- ^ 'csgCourseId'@@ -116,17 +106,15 @@ CoursesStudentsGet' { _csgXgafv = Nothing , _csgUploadProtocol = Nothing- , _csgPp = True , _csgCourseId = pCsgCourseId_ , _csgAccessToken = Nothing , _csgUploadType = Nothing , _csgUserId = pCsgUserId_- , _csgBearerToken = Nothing , _csgCallback = Nothing } -- | V1 error format.-csgXgafv :: Lens' CoursesStudentsGet (Maybe Text)+csgXgafv :: Lens' CoursesStudentsGet (Maybe Xgafv) csgXgafv = lens _csgXgafv (\ s a -> s{_csgXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -135,10 +123,6 @@ = lens _csgUploadProtocol (\ s a -> s{_csgUploadProtocol = a}) --- | Pretty-print response.-csgPp :: Lens' CoursesStudentsGet Bool-csgPp = lens _csgPp (\ s a -> s{_csgPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. csgCourseId :: Lens' CoursesStudentsGet Text@@ -164,12 +148,6 @@ csgUserId = lens _csgUserId (\ s a -> s{_csgUserId = a}) --- | OAuth bearer token.-csgBearerToken :: Lens' CoursesStudentsGet (Maybe Text)-csgBearerToken- = lens _csgBearerToken- (\ s a -> s{_csgBearerToken = a})- -- | JSONP csgCallback :: Lens' CoursesStudentsGet (Maybe Text) csgCallback@@ -185,10 +163,8 @@ requestClient CoursesStudentsGet'{..} = go _csgCourseId _csgUserId _csgXgafv _csgUploadProtocol- (Just _csgPp) _csgAccessToken _csgUploadType- _csgBearerToken _csgCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/Students/List.hs view
@@ -38,11 +38,9 @@ -- * Request Lenses , cslXgafv , cslUploadProtocol- , cslPp , cslCourseId , cslAccessToken , cslUploadType- , cslBearerToken , cslPageToken , cslPageSize , cslCallback@@ -58,17 +56,15 @@ "courses" :> Capture "courseId" Text :> "students" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListStudentsResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListStudentsResponse -- | Returns a list of students of this course that the requester is -- permitted to view. This method returns the following error codes: *@@ -77,13 +73,11 @@ -- -- /See:/ 'coursesStudentsList' smart constructor. data CoursesStudentsList = CoursesStudentsList'- { _cslXgafv :: !(Maybe Text)+ { _cslXgafv :: !(Maybe Xgafv) , _cslUploadProtocol :: !(Maybe Text)- , _cslPp :: !Bool , _cslCourseId :: !Text , _cslAccessToken :: !(Maybe Text) , _cslUploadType :: !(Maybe Text)- , _cslBearerToken :: !(Maybe Text) , _cslPageToken :: !(Maybe Text) , _cslPageSize :: !(Maybe (Textual Int32)) , _cslCallback :: !(Maybe Text)@@ -97,16 +91,12 @@ -- -- * 'cslUploadProtocol' ----- * 'cslPp'--- -- * 'cslCourseId' -- -- * 'cslAccessToken' -- -- * 'cslUploadType' ----- * 'cslBearerToken'--- -- * 'cslPageToken' -- -- * 'cslPageSize'@@ -119,18 +109,16 @@ CoursesStudentsList' { _cslXgafv = Nothing , _cslUploadProtocol = Nothing- , _cslPp = True , _cslCourseId = pCslCourseId_ , _cslAccessToken = Nothing , _cslUploadType = Nothing- , _cslBearerToken = Nothing , _cslPageToken = Nothing , _cslPageSize = Nothing , _cslCallback = Nothing } -- | V1 error format.-cslXgafv :: Lens' CoursesStudentsList (Maybe Text)+cslXgafv :: Lens' CoursesStudentsList (Maybe Xgafv) cslXgafv = lens _cslXgafv (\ s a -> s{_cslXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -139,10 +127,6 @@ = lens _cslUploadProtocol (\ s a -> s{_cslUploadProtocol = a}) --- | Pretty-print response.-cslPp :: Lens' CoursesStudentsList Bool-cslPp = lens _cslPp (\ s a -> s{_cslPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. cslCourseId :: Lens' CoursesStudentsList Text@@ -161,12 +145,6 @@ = lens _cslUploadType (\ s a -> s{_cslUploadType = a}) --- | OAuth bearer token.-cslBearerToken :: Lens' CoursesStudentsList (Maybe Text)-cslBearerToken- = lens _cslBearerToken- (\ s a -> s{_cslBearerToken = a})- -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.@@ -195,10 +173,8 @@ "https://www.googleapis.com/auth/classroom.rosters.readonly"] requestClient CoursesStudentsList'{..} = go _cslCourseId _cslXgafv _cslUploadProtocol- (Just _cslPp) _cslAccessToken _cslUploadType- _cslBearerToken _cslPageToken _cslPageSize _cslCallback
gen/Network/Google/Resource/Classroom/Courses/Teachers/Create.hs view
@@ -43,12 +43,10 @@ -- * Request Lenses , ctcXgafv , ctcUploadProtocol- , ctcPp , ctcCourseId , ctcAccessToken , ctcUploadType , ctcPayload- , ctcBearerToken , ctcCallback ) where @@ -62,15 +60,13 @@ "courses" :> Capture "courseId" Text :> "teachers" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] Teacher :> Post '[JSON] Teacher+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Teacher :> Post '[JSON] Teacher -- | Creates a teacher of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted@@ -84,14 +80,12 @@ -- -- /See:/ 'coursesTeachersCreate' smart constructor. data CoursesTeachersCreate = CoursesTeachersCreate'- { _ctcXgafv :: !(Maybe Text)+ { _ctcXgafv :: !(Maybe Xgafv) , _ctcUploadProtocol :: !(Maybe Text)- , _ctcPp :: !Bool , _ctcCourseId :: !Text , _ctcAccessToken :: !(Maybe Text) , _ctcUploadType :: !(Maybe Text) , _ctcPayload :: !Teacher- , _ctcBearerToken :: !(Maybe Text) , _ctcCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -103,8 +97,6 @@ -- -- * 'ctcUploadProtocol' ----- * 'ctcPp'--- -- * 'ctcCourseId' -- -- * 'ctcAccessToken'@@ -113,8 +105,6 @@ -- -- * 'ctcPayload' ----- * 'ctcBearerToken'--- -- * 'ctcCallback' coursesTeachersCreate :: Text -- ^ 'ctcCourseId'@@ -124,17 +114,15 @@ CoursesTeachersCreate' { _ctcXgafv = Nothing , _ctcUploadProtocol = Nothing- , _ctcPp = True , _ctcCourseId = pCtcCourseId_ , _ctcAccessToken = Nothing , _ctcUploadType = Nothing , _ctcPayload = pCtcPayload_- , _ctcBearerToken = Nothing , _ctcCallback = Nothing } -- | V1 error format.-ctcXgafv :: Lens' CoursesTeachersCreate (Maybe Text)+ctcXgafv :: Lens' CoursesTeachersCreate (Maybe Xgafv) ctcXgafv = lens _ctcXgafv (\ s a -> s{_ctcXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -143,10 +131,6 @@ = lens _ctcUploadProtocol (\ s a -> s{_ctcUploadProtocol = a}) --- | Pretty-print response.-ctcPp :: Lens' CoursesTeachersCreate Bool-ctcPp = lens _ctcPp (\ s a -> s{_ctcPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ctcCourseId :: Lens' CoursesTeachersCreate Text@@ -170,12 +154,6 @@ ctcPayload = lens _ctcPayload (\ s a -> s{_ctcPayload = a}) --- | OAuth bearer token.-ctcBearerToken :: Lens' CoursesTeachersCreate (Maybe Text)-ctcBearerToken- = lens _ctcBearerToken- (\ s a -> s{_ctcBearerToken = a})- -- | JSONP ctcCallback :: Lens' CoursesTeachersCreate (Maybe Text) ctcCallback@@ -189,10 +167,8 @@ "https://www.googleapis.com/auth/classroom.rosters"] requestClient CoursesTeachersCreate'{..} = go _ctcCourseId _ctcXgafv _ctcUploadProtocol- (Just _ctcPp) _ctcAccessToken _ctcUploadType- _ctcBearerToken _ctcCallback (Just AltJSON) _ctcPayload
gen/Network/Google/Resource/Classroom/Courses/Teachers/Delete.hs view
@@ -40,12 +40,10 @@ -- * Request Lenses , ctdXgafv , ctdUploadProtocol- , ctdPp , ctdCourseId , ctdAccessToken , ctdUploadType , ctdUserId- , ctdBearerToken , ctdCallback ) where @@ -60,14 +58,12 @@ Capture "courseId" Text :> "teachers" :> Capture "userId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes a teacher of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted@@ -78,14 +74,12 @@ -- -- /See:/ 'coursesTeachersDelete' smart constructor. data CoursesTeachersDelete = CoursesTeachersDelete'- { _ctdXgafv :: !(Maybe Text)+ { _ctdXgafv :: !(Maybe Xgafv) , _ctdUploadProtocol :: !(Maybe Text)- , _ctdPp :: !Bool , _ctdCourseId :: !Text , _ctdAccessToken :: !(Maybe Text) , _ctdUploadType :: !(Maybe Text) , _ctdUserId :: !Text- , _ctdBearerToken :: !(Maybe Text) , _ctdCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -97,8 +91,6 @@ -- -- * 'ctdUploadProtocol' ----- * 'ctdPp'--- -- * 'ctdCourseId' -- -- * 'ctdAccessToken'@@ -107,8 +99,6 @@ -- -- * 'ctdUserId' ----- * 'ctdBearerToken'--- -- * 'ctdCallback' coursesTeachersDelete :: Text -- ^ 'ctdCourseId'@@ -118,17 +108,15 @@ CoursesTeachersDelete' { _ctdXgafv = Nothing , _ctdUploadProtocol = Nothing- , _ctdPp = True , _ctdCourseId = pCtdCourseId_ , _ctdAccessToken = Nothing , _ctdUploadType = Nothing , _ctdUserId = pCtdUserId_- , _ctdBearerToken = Nothing , _ctdCallback = Nothing } -- | V1 error format.-ctdXgafv :: Lens' CoursesTeachersDelete (Maybe Text)+ctdXgafv :: Lens' CoursesTeachersDelete (Maybe Xgafv) ctdXgafv = lens _ctdXgafv (\ s a -> s{_ctdXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -137,10 +125,6 @@ = lens _ctdUploadProtocol (\ s a -> s{_ctdUploadProtocol = a}) --- | Pretty-print response.-ctdPp :: Lens' CoursesTeachersDelete Bool-ctdPp = lens _ctdPp (\ s a -> s{_ctdPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ctdCourseId :: Lens' CoursesTeachersDelete Text@@ -166,12 +150,6 @@ ctdUserId = lens _ctdUserId (\ s a -> s{_ctdUserId = a}) --- | OAuth bearer token.-ctdBearerToken :: Lens' CoursesTeachersDelete (Maybe Text)-ctdBearerToken- = lens _ctdBearerToken- (\ s a -> s{_ctdBearerToken = a})- -- | JSONP ctdCallback :: Lens' CoursesTeachersDelete (Maybe Text) ctdCallback@@ -184,10 +162,8 @@ requestClient CoursesTeachersDelete'{..} = go _ctdCourseId _ctdUserId _ctdXgafv _ctdUploadProtocol- (Just _ctdPp) _ctdAccessToken _ctdUploadType- _ctdBearerToken _ctdCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/Teachers/Get.hs view
@@ -39,12 +39,10 @@ -- * Request Lenses , ctgXgafv , ctgUploadProtocol- , ctgPp , ctgCourseId , ctgAccessToken , ctgUploadType , ctgUserId- , ctgBearerToken , ctgCallback ) where @@ -59,14 +57,12 @@ Capture "courseId" Text :> "teachers" :> Capture "userId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Teacher+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Teacher -- | Returns a teacher of a course. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if the requesting user is not permitted@@ -76,14 +72,12 @@ -- -- /See:/ 'coursesTeachersGet' smart constructor. data CoursesTeachersGet = CoursesTeachersGet'- { _ctgXgafv :: !(Maybe Text)+ { _ctgXgafv :: !(Maybe Xgafv) , _ctgUploadProtocol :: !(Maybe Text)- , _ctgPp :: !Bool , _ctgCourseId :: !Text , _ctgAccessToken :: !(Maybe Text) , _ctgUploadType :: !(Maybe Text) , _ctgUserId :: !Text- , _ctgBearerToken :: !(Maybe Text) , _ctgCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -95,8 +89,6 @@ -- -- * 'ctgUploadProtocol' ----- * 'ctgPp'--- -- * 'ctgCourseId' -- -- * 'ctgAccessToken'@@ -105,8 +97,6 @@ -- -- * 'ctgUserId' ----- * 'ctgBearerToken'--- -- * 'ctgCallback' coursesTeachersGet :: Text -- ^ 'ctgCourseId'@@ -116,17 +106,15 @@ CoursesTeachersGet' { _ctgXgafv = Nothing , _ctgUploadProtocol = Nothing- , _ctgPp = True , _ctgCourseId = pCtgCourseId_ , _ctgAccessToken = Nothing , _ctgUploadType = Nothing , _ctgUserId = pCtgUserId_- , _ctgBearerToken = Nothing , _ctgCallback = Nothing } -- | V1 error format.-ctgXgafv :: Lens' CoursesTeachersGet (Maybe Text)+ctgXgafv :: Lens' CoursesTeachersGet (Maybe Xgafv) ctgXgafv = lens _ctgXgafv (\ s a -> s{_ctgXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -135,10 +123,6 @@ = lens _ctgUploadProtocol (\ s a -> s{_ctgUploadProtocol = a}) --- | Pretty-print response.-ctgPp :: Lens' CoursesTeachersGet Bool-ctgPp = lens _ctgPp (\ s a -> s{_ctgPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ctgCourseId :: Lens' CoursesTeachersGet Text@@ -164,12 +148,6 @@ ctgUserId = lens _ctgUserId (\ s a -> s{_ctgUserId = a}) --- | OAuth bearer token.-ctgBearerToken :: Lens' CoursesTeachersGet (Maybe Text)-ctgBearerToken- = lens _ctgBearerToken- (\ s a -> s{_ctgBearerToken = a})- -- | JSONP ctgCallback :: Lens' CoursesTeachersGet (Maybe Text) ctgCallback@@ -185,10 +163,8 @@ requestClient CoursesTeachersGet'{..} = go _ctgCourseId _ctgUserId _ctgXgafv _ctgUploadProtocol- (Just _ctgPp) _ctgAccessToken _ctgUploadType- _ctgBearerToken _ctgCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Courses/Teachers/List.hs view
@@ -38,11 +38,9 @@ -- * Request Lenses , ctlXgafv , ctlUploadProtocol- , ctlPp , ctlCourseId , ctlAccessToken , ctlUploadType- , ctlBearerToken , ctlPageToken , ctlPageSize , ctlCallback@@ -58,17 +56,15 @@ "courses" :> Capture "courseId" Text :> "teachers" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListTeachersResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListTeachersResponse -- | Returns a list of teachers of this course that the requester is -- permitted to view. This method returns the following error codes: *@@ -77,13 +73,11 @@ -- -- /See:/ 'coursesTeachersList' smart constructor. data CoursesTeachersList = CoursesTeachersList'- { _ctlXgafv :: !(Maybe Text)+ { _ctlXgafv :: !(Maybe Xgafv) , _ctlUploadProtocol :: !(Maybe Text)- , _ctlPp :: !Bool , _ctlCourseId :: !Text , _ctlAccessToken :: !(Maybe Text) , _ctlUploadType :: !(Maybe Text)- , _ctlBearerToken :: !(Maybe Text) , _ctlPageToken :: !(Maybe Text) , _ctlPageSize :: !(Maybe (Textual Int32)) , _ctlCallback :: !(Maybe Text)@@ -97,16 +91,12 @@ -- -- * 'ctlUploadProtocol' ----- * 'ctlPp'--- -- * 'ctlCourseId' -- -- * 'ctlAccessToken' -- -- * 'ctlUploadType' ----- * 'ctlBearerToken'--- -- * 'ctlPageToken' -- -- * 'ctlPageSize'@@ -119,18 +109,16 @@ CoursesTeachersList' { _ctlXgafv = Nothing , _ctlUploadProtocol = Nothing- , _ctlPp = True , _ctlCourseId = pCtlCourseId_ , _ctlAccessToken = Nothing , _ctlUploadType = Nothing- , _ctlBearerToken = Nothing , _ctlPageToken = Nothing , _ctlPageSize = Nothing , _ctlCallback = Nothing } -- | V1 error format.-ctlXgafv :: Lens' CoursesTeachersList (Maybe Text)+ctlXgafv :: Lens' CoursesTeachersList (Maybe Xgafv) ctlXgafv = lens _ctlXgafv (\ s a -> s{_ctlXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -139,10 +127,6 @@ = lens _ctlUploadProtocol (\ s a -> s{_ctlUploadProtocol = a}) --- | Pretty-print response.-ctlPp :: Lens' CoursesTeachersList Bool-ctlPp = lens _ctlPp (\ s a -> s{_ctlPp = a})- -- | Identifier of the course. This identifier can be either the -- Classroom-assigned identifier or an alias. ctlCourseId :: Lens' CoursesTeachersList Text@@ -161,12 +145,6 @@ = lens _ctlUploadType (\ s a -> s{_ctlUploadType = a}) --- | OAuth bearer token.-ctlBearerToken :: Lens' CoursesTeachersList (Maybe Text)-ctlBearerToken- = lens _ctlBearerToken- (\ s a -> s{_ctlBearerToken = a})- -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.@@ -195,10 +173,8 @@ "https://www.googleapis.com/auth/classroom.rosters.readonly"] requestClient CoursesTeachersList'{..} = go _ctlCourseId _ctlXgafv _ctlUploadProtocol- (Just _ctlPp) _ctlAccessToken _ctlUploadType- _ctlBearerToken _ctlPageToken _ctlPageSize _ctlCallback
gen/Network/Google/Resource/Classroom/Courses/Update.hs view
@@ -39,11 +39,9 @@ -- * Request Lenses , cuXgafv , cuUploadProtocol- , cuPp , cuAccessToken , cuUploadType , cuPayload- , cuBearerToken , cuId , cuCallback ) where@@ -57,15 +55,13 @@ "v1" :> "courses" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] Course :> Put '[JSON] Course+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Course :> Put '[JSON] Course -- | Updates a course. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to modify@@ -75,13 +71,11 @@ -- -- /See:/ 'coursesUpdate' smart constructor. data CoursesUpdate = CoursesUpdate'- { _cuXgafv :: !(Maybe Text)+ { _cuXgafv :: !(Maybe Xgafv) , _cuUploadProtocol :: !(Maybe Text)- , _cuPp :: !Bool , _cuAccessToken :: !(Maybe Text) , _cuUploadType :: !(Maybe Text) , _cuPayload :: !Course- , _cuBearerToken :: !(Maybe Text) , _cuId :: !Text , _cuCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -94,16 +88,12 @@ -- -- * 'cuUploadProtocol' ----- * 'cuPp'--- -- * 'cuAccessToken' -- -- * 'cuUploadType' -- -- * 'cuPayload' ----- * 'cuBearerToken'--- -- * 'cuId' -- -- * 'cuCallback'@@ -115,17 +105,15 @@ CoursesUpdate' { _cuXgafv = Nothing , _cuUploadProtocol = Nothing- , _cuPp = True , _cuAccessToken = Nothing , _cuUploadType = Nothing , _cuPayload = pCuPayload_- , _cuBearerToken = Nothing , _cuId = pCuId_ , _cuCallback = Nothing } -- | V1 error format.-cuXgafv :: Lens' CoursesUpdate (Maybe Text)+cuXgafv :: Lens' CoursesUpdate (Maybe Xgafv) cuXgafv = lens _cuXgafv (\ s a -> s{_cuXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -134,10 +122,6 @@ = lens _cuUploadProtocol (\ s a -> s{_cuUploadProtocol = a}) --- | Pretty-print response.-cuPp :: Lens' CoursesUpdate Bool-cuPp = lens _cuPp (\ s a -> s{_cuPp = a})- -- | OAuth access token. cuAccessToken :: Lens' CoursesUpdate (Maybe Text) cuAccessToken@@ -154,12 +138,6 @@ cuPayload = lens _cuPayload (\ s a -> s{_cuPayload = a}) --- | OAuth bearer token.-cuBearerToken :: Lens' CoursesUpdate (Maybe Text)-cuBearerToken- = lens _cuBearerToken- (\ s a -> s{_cuBearerToken = a})- -- | Identifier of the course to update. This identifier can be either the -- Classroom-assigned identifier or an alias. cuId :: Lens' CoursesUpdate Text@@ -175,10 +153,8 @@ type Scopes CoursesUpdate = '["https://www.googleapis.com/auth/classroom.courses"] requestClient CoursesUpdate'{..}- = go _cuId _cuXgafv _cuUploadProtocol (Just _cuPp)- _cuAccessToken+ = go _cuId _cuXgafv _cuUploadProtocol _cuAccessToken _cuUploadType- _cuBearerToken _cuCallback (Just AltJSON) _cuPayload
gen/Network/Google/Resource/Classroom/Invitations/Accept.hs view
@@ -43,10 +43,8 @@ -- * Request Lenses , iaXgafv , iaUploadProtocol- , iaPp , iaAccessToken , iaUploadType- , iaBearerToken , iaId , iaCallback ) where@@ -60,14 +58,12 @@ "v1" :> "invitations" :> CaptureMode "id" "accept" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Post '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Post '[JSON] Empty -- | Accepts an invitation, removing it and adding the invited user to the -- teachers or students (as appropriate) of the specified course. Only the@@ -81,12 +77,10 @@ -- -- /See:/ 'invitationsAccept' smart constructor. data InvitationsAccept = InvitationsAccept'- { _iaXgafv :: !(Maybe Text)+ { _iaXgafv :: !(Maybe Xgafv) , _iaUploadProtocol :: !(Maybe Text)- , _iaPp :: !Bool , _iaAccessToken :: !(Maybe Text) , _iaUploadType :: !(Maybe Text)- , _iaBearerToken :: !(Maybe Text) , _iaId :: !Text , _iaCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -99,14 +93,10 @@ -- -- * 'iaUploadProtocol' ----- * 'iaPp'--- -- * 'iaAccessToken' -- -- * 'iaUploadType' ----- * 'iaBearerToken'--- -- * 'iaId' -- -- * 'iaCallback'@@ -117,16 +107,14 @@ InvitationsAccept' { _iaXgafv = Nothing , _iaUploadProtocol = Nothing- , _iaPp = True , _iaAccessToken = Nothing , _iaUploadType = Nothing- , _iaBearerToken = Nothing , _iaId = pIaId_ , _iaCallback = Nothing } -- | V1 error format.-iaXgafv :: Lens' InvitationsAccept (Maybe Text)+iaXgafv :: Lens' InvitationsAccept (Maybe Xgafv) iaXgafv = lens _iaXgafv (\ s a -> s{_iaXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -135,10 +123,6 @@ = lens _iaUploadProtocol (\ s a -> s{_iaUploadProtocol = a}) --- | Pretty-print response.-iaPp :: Lens' InvitationsAccept Bool-iaPp = lens _iaPp (\ s a -> s{_iaPp = a})- -- | OAuth access token. iaAccessToken :: Lens' InvitationsAccept (Maybe Text) iaAccessToken@@ -150,12 +134,6 @@ iaUploadType = lens _iaUploadType (\ s a -> s{_iaUploadType = a}) --- | OAuth bearer token.-iaBearerToken :: Lens' InvitationsAccept (Maybe Text)-iaBearerToken- = lens _iaBearerToken- (\ s a -> s{_iaBearerToken = a})- -- | Identifier of the invitation to accept. iaId :: Lens' InvitationsAccept Text iaId = lens _iaId (\ s a -> s{_iaId = a})@@ -170,10 +148,8 @@ type Scopes InvitationsAccept = '["https://www.googleapis.com/auth/classroom.rosters"] requestClient InvitationsAccept'{..}- = go _iaId _iaXgafv _iaUploadProtocol (Just _iaPp)- _iaAccessToken+ = go _iaId _iaXgafv _iaUploadProtocol _iaAccessToken _iaUploadType- _iaBearerToken _iaCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Invitations/Create.hs view
@@ -43,11 +43,9 @@ -- * Request Lenses , icXgafv , icUploadProtocol- , icPp , icAccessToken , icUploadType , icPayload- , icBearerToken , icCallback ) where @@ -59,15 +57,13 @@ type InvitationsCreateResource = "v1" :> "invitations" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] Invitation :> Post '[JSON] Invitation+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Invitation :> Post '[JSON] Invitation -- | Creates an invitation. Only one invitation for a user and course may -- exist at a time. Delete and re-create an invitation to make changes.@@ -81,13 +77,11 @@ -- -- /See:/ 'invitationsCreate' smart constructor. data InvitationsCreate = InvitationsCreate'- { _icXgafv :: !(Maybe Text)+ { _icXgafv :: !(Maybe Xgafv) , _icUploadProtocol :: !(Maybe Text)- , _icPp :: !Bool , _icAccessToken :: !(Maybe Text) , _icUploadType :: !(Maybe Text) , _icPayload :: !Invitation- , _icBearerToken :: !(Maybe Text) , _icCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -99,16 +93,12 @@ -- -- * 'icUploadProtocol' ----- * 'icPp'--- -- * 'icAccessToken' -- -- * 'icUploadType' -- -- * 'icPayload' ----- * 'icBearerToken'--- -- * 'icCallback' invitationsCreate :: Invitation -- ^ 'icPayload'@@ -117,16 +107,14 @@ InvitationsCreate' { _icXgafv = Nothing , _icUploadProtocol = Nothing- , _icPp = True , _icAccessToken = Nothing , _icUploadType = Nothing , _icPayload = pIcPayload_- , _icBearerToken = Nothing , _icCallback = Nothing } -- | V1 error format.-icXgafv :: Lens' InvitationsCreate (Maybe Text)+icXgafv :: Lens' InvitationsCreate (Maybe Xgafv) icXgafv = lens _icXgafv (\ s a -> s{_icXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -135,10 +123,6 @@ = lens _icUploadProtocol (\ s a -> s{_icUploadProtocol = a}) --- | Pretty-print response.-icPp :: Lens' InvitationsCreate Bool-icPp = lens _icPp (\ s a -> s{_icPp = a})- -- | OAuth access token. icAccessToken :: Lens' InvitationsCreate (Maybe Text) icAccessToken@@ -155,12 +139,6 @@ icPayload = lens _icPayload (\ s a -> s{_icPayload = a}) --- | OAuth bearer token.-icBearerToken :: Lens' InvitationsCreate (Maybe Text)-icBearerToken- = lens _icBearerToken- (\ s a -> s{_icBearerToken = a})- -- | JSONP icCallback :: Lens' InvitationsCreate (Maybe Text) icCallback@@ -171,10 +149,8 @@ type Scopes InvitationsCreate = '["https://www.googleapis.com/auth/classroom.rosters"] requestClient InvitationsCreate'{..}- = go _icXgafv _icUploadProtocol (Just _icPp)- _icAccessToken+ = go _icXgafv _icUploadProtocol _icAccessToken _icUploadType- _icBearerToken _icCallback (Just AltJSON) _icPayload
gen/Network/Google/Resource/Classroom/Invitations/Delete.hs view
@@ -38,10 +38,8 @@ -- * Request Lenses , idXgafv , idUploadProtocol- , idPp , idAccessToken , idUploadType- , idBearerToken , idId , idCallback ) where@@ -55,14 +53,12 @@ "v1" :> "invitations" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes an invitation. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to delete@@ -71,12 +67,10 @@ -- -- /See:/ 'invitationsDelete' smart constructor. data InvitationsDelete = InvitationsDelete'- { _idXgafv :: !(Maybe Text)+ { _idXgafv :: !(Maybe Xgafv) , _idUploadProtocol :: !(Maybe Text)- , _idPp :: !Bool , _idAccessToken :: !(Maybe Text) , _idUploadType :: !(Maybe Text)- , _idBearerToken :: !(Maybe Text) , _idId :: !Text , _idCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -89,14 +83,10 @@ -- -- * 'idUploadProtocol' ----- * 'idPp'--- -- * 'idAccessToken' -- -- * 'idUploadType' ----- * 'idBearerToken'--- -- * 'idId' -- -- * 'idCallback'@@ -107,16 +97,14 @@ InvitationsDelete' { _idXgafv = Nothing , _idUploadProtocol = Nothing- , _idPp = True , _idAccessToken = Nothing , _idUploadType = Nothing- , _idBearerToken = Nothing , _idId = pIdId_ , _idCallback = Nothing } -- | V1 error format.-idXgafv :: Lens' InvitationsDelete (Maybe Text)+idXgafv :: Lens' InvitationsDelete (Maybe Xgafv) idXgafv = lens _idXgafv (\ s a -> s{_idXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -125,10 +113,6 @@ = lens _idUploadProtocol (\ s a -> s{_idUploadProtocol = a}) --- | Pretty-print response.-idPp :: Lens' InvitationsDelete Bool-idPp = lens _idPp (\ s a -> s{_idPp = a})- -- | OAuth access token. idAccessToken :: Lens' InvitationsDelete (Maybe Text) idAccessToken@@ -140,12 +124,6 @@ idUploadType = lens _idUploadType (\ s a -> s{_idUploadType = a}) --- | OAuth bearer token.-idBearerToken :: Lens' InvitationsDelete (Maybe Text)-idBearerToken- = lens _idBearerToken- (\ s a -> s{_idBearerToken = a})- -- | Identifier of the invitation to delete. idId :: Lens' InvitationsDelete Text idId = lens _idId (\ s a -> s{_idId = a})@@ -160,10 +138,8 @@ type Scopes InvitationsDelete = '["https://www.googleapis.com/auth/classroom.rosters"] requestClient InvitationsDelete'{..}- = go _idId _idXgafv _idUploadProtocol (Just _idPp)- _idAccessToken+ = go _idId _idXgafv _idUploadProtocol _idAccessToken _idUploadType- _idBearerToken _idCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Invitations/Get.hs view
@@ -38,10 +38,8 @@ -- * Request Lenses , igXgafv , igUploadProtocol- , igPp , igAccessToken , igUploadType- , igBearerToken , igId , igCallback ) where@@ -55,14 +53,12 @@ "v1" :> "invitations" :> Capture "id" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Invitation+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Invitation -- | Returns an invitation. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to view@@ -71,12 +67,10 @@ -- -- /See:/ 'invitationsGet' smart constructor. data InvitationsGet = InvitationsGet'- { _igXgafv :: !(Maybe Text)+ { _igXgafv :: !(Maybe Xgafv) , _igUploadProtocol :: !(Maybe Text)- , _igPp :: !Bool , _igAccessToken :: !(Maybe Text) , _igUploadType :: !(Maybe Text)- , _igBearerToken :: !(Maybe Text) , _igId :: !Text , _igCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic)@@ -89,14 +83,10 @@ -- -- * 'igUploadProtocol' ----- * 'igPp'--- -- * 'igAccessToken' -- -- * 'igUploadType' ----- * 'igBearerToken'--- -- * 'igId' -- -- * 'igCallback'@@ -107,16 +97,14 @@ InvitationsGet' { _igXgafv = Nothing , _igUploadProtocol = Nothing- , _igPp = True , _igAccessToken = Nothing , _igUploadType = Nothing- , _igBearerToken = Nothing , _igId = pIgId_ , _igCallback = Nothing } -- | V1 error format.-igXgafv :: Lens' InvitationsGet (Maybe Text)+igXgafv :: Lens' InvitationsGet (Maybe Xgafv) igXgafv = lens _igXgafv (\ s a -> s{_igXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -125,10 +113,6 @@ = lens _igUploadProtocol (\ s a -> s{_igUploadProtocol = a}) --- | Pretty-print response.-igPp :: Lens' InvitationsGet Bool-igPp = lens _igPp (\ s a -> s{_igPp = a})- -- | OAuth access token. igAccessToken :: Lens' InvitationsGet (Maybe Text) igAccessToken@@ -140,12 +124,6 @@ igUploadType = lens _igUploadType (\ s a -> s{_igUploadType = a}) --- | OAuth bearer token.-igBearerToken :: Lens' InvitationsGet (Maybe Text)-igBearerToken- = lens _igBearerToken- (\ s a -> s{_igBearerToken = a})- -- | Identifier of the invitation to return. igId :: Lens' InvitationsGet Text igId = lens _igId (\ s a -> s{_igId = a})@@ -161,10 +139,8 @@ '["https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly"] requestClient InvitationsGet'{..}- = go _igId _igXgafv _igUploadProtocol (Just _igPp)- _igAccessToken+ = go _igId _igXgafv _igUploadProtocol _igAccessToken _igUploadType- _igBearerToken _igCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/Invitations/List.hs view
@@ -39,12 +39,10 @@ -- * Request Lenses , ilXgafv , ilUploadProtocol- , ilPp , ilCourseId , ilAccessToken , ilUploadType , ilUserId- , ilBearerToken , ilPageToken , ilPageSize , ilCallback@@ -58,19 +56,17 @@ type InvitationsListResource = "v1" :> "invitations" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "courseId" Text :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "userId" Text :>- QueryParam "bearer_token" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListInvitationsResponse+ QueryParam "courseId" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "userId" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListInvitationsResponse -- | Returns a list of invitations that the requesting user is permitted to -- view, restricted to those that match the list request. *Note:* At least@@ -80,14 +76,12 @@ -- -- /See:/ 'invitationsList' smart constructor. data InvitationsList = InvitationsList'- { _ilXgafv :: !(Maybe Text)+ { _ilXgafv :: !(Maybe Xgafv) , _ilUploadProtocol :: !(Maybe Text)- , _ilPp :: !Bool , _ilCourseId :: !(Maybe Text) , _ilAccessToken :: !(Maybe Text) , _ilUploadType :: !(Maybe Text) , _ilUserId :: !(Maybe Text)- , _ilBearerToken :: !(Maybe Text) , _ilPageToken :: !(Maybe Text) , _ilPageSize :: !(Maybe (Textual Int32)) , _ilCallback :: !(Maybe Text)@@ -101,8 +95,6 @@ -- -- * 'ilUploadProtocol' ----- * 'ilPp'--- -- * 'ilCourseId' -- -- * 'ilAccessToken'@@ -111,8 +103,6 @@ -- -- * 'ilUserId' ----- * 'ilBearerToken'--- -- * 'ilPageToken' -- -- * 'ilPageSize'@@ -124,19 +114,17 @@ InvitationsList' { _ilXgafv = Nothing , _ilUploadProtocol = Nothing- , _ilPp = True , _ilCourseId = Nothing , _ilAccessToken = Nothing , _ilUploadType = Nothing , _ilUserId = Nothing- , _ilBearerToken = Nothing , _ilPageToken = Nothing , _ilPageSize = Nothing , _ilCallback = Nothing } -- | V1 error format.-ilXgafv :: Lens' InvitationsList (Maybe Text)+ilXgafv :: Lens' InvitationsList (Maybe Xgafv) ilXgafv = lens _ilXgafv (\ s a -> s{_ilXgafv = a}) -- | Upload protocol for media (e.g. \"raw\", \"multipart\").@@ -145,10 +133,6 @@ = lens _ilUploadProtocol (\ s a -> s{_ilUploadProtocol = a}) --- | Pretty-print response.-ilPp :: Lens' InvitationsList Bool-ilPp = lens _ilPp (\ s a -> s{_ilPp = a})- -- | Restricts returned invitations to those for a course with the specified -- identifier. ilCourseId :: Lens' InvitationsList (Maybe Text)@@ -173,12 +157,6 @@ ilUserId :: Lens' InvitationsList (Maybe Text) ilUserId = lens _ilUserId (\ s a -> s{_ilUserId = a}) --- | OAuth bearer token.-ilBearerToken :: Lens' InvitationsList (Maybe Text)-ilBearerToken- = lens _ilBearerToken- (\ s a -> s{_ilBearerToken = a})- -- | nextPageToken value returned from a previous list call, indicating that -- the subsequent page of results should be returned. The list request must -- be otherwise identical to the one that resulted in this token.@@ -204,12 +182,10 @@ '["https://www.googleapis.com/auth/classroom.rosters", "https://www.googleapis.com/auth/classroom.rosters.readonly"] requestClient InvitationsList'{..}- = go _ilXgafv _ilUploadProtocol (Just _ilPp)- _ilCourseId+ = go _ilXgafv _ilUploadProtocol _ilCourseId _ilAccessToken _ilUploadType _ilUserId- _ilBearerToken _ilPageToken _ilPageSize _ilCallback
+ gen/Network/Google/Resource/Classroom/Registrations/Create.hs view
@@ -0,0 +1,186 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Registrations.Create+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Creates a \`Registration\`, causing Classroom to start sending+-- notifications from the provided \`feed\` to the destination provided in+-- \`cloudPubSubTopic\`. Returns the created \`Registration\`. Currently,+-- this will be the same as the argument, but with server-assigned fields+-- such as \`expiry_time\` and \`id\` filled in. Note that any value+-- specified for the \`expiry_time\` or \`id\` fields will be ignored.+-- While Classroom may validate the \`cloudPubSubTopic\` and return errors+-- on a best effort basis, it is the caller\'s responsibility to ensure+-- that it exists and that Classroom has permission to publish to it. This+-- method may return the following error codes: * \`PERMISSION_DENIED\` if:+-- * the authenticated user does not have permission to receive+-- notifications from the requested field; or * the credential provided+-- does not include the appropriate scope for the requested feed. * another+-- access error is encountered. * \`INVALID_ARGUMENT\` if: * no+-- \`cloudPubsubTopic\` is specified, or the specified \`cloudPubsubTopic\`+-- is not valid; or * no \`feed\` is specified, or the specified \`feed\`+-- is not valid. * \`NOT_FOUND\` if: * the specified \`feed\` cannot be+-- located, or the requesting user does not have permission to determine+-- whether or not it exists; or * the specified \`cloudPubsubTopic\` cannot+-- be located, or Classroom has not been granted permission to publish to+-- it.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.registrations.create@.+module Network.Google.Resource.Classroom.Registrations.Create+ (+ -- * REST Resource+ RegistrationsCreateResource++ -- * Creating a Request+ , registrationsCreate+ , RegistrationsCreate++ -- * Request Lenses+ , rcXgafv+ , rcUploadProtocol+ , rcAccessToken+ , rcUploadType+ , rcPayload+ , rcCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.registrations.create@ method which the+-- 'RegistrationsCreate' request conforms to.+type RegistrationsCreateResource =+ "v1" :>+ "registrations" :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] Registration :>+ Post '[JSON] Registration++-- | Creates a \`Registration\`, causing Classroom to start sending+-- notifications from the provided \`feed\` to the destination provided in+-- \`cloudPubSubTopic\`. Returns the created \`Registration\`. Currently,+-- this will be the same as the argument, but with server-assigned fields+-- such as \`expiry_time\` and \`id\` filled in. Note that any value+-- specified for the \`expiry_time\` or \`id\` fields will be ignored.+-- While Classroom may validate the \`cloudPubSubTopic\` and return errors+-- on a best effort basis, it is the caller\'s responsibility to ensure+-- that it exists and that Classroom has permission to publish to it. This+-- method may return the following error codes: * \`PERMISSION_DENIED\` if:+-- * the authenticated user does not have permission to receive+-- notifications from the requested field; or * the credential provided+-- does not include the appropriate scope for the requested feed. * another+-- access error is encountered. * \`INVALID_ARGUMENT\` if: * no+-- \`cloudPubsubTopic\` is specified, or the specified \`cloudPubsubTopic\`+-- is not valid; or * no \`feed\` is specified, or the specified \`feed\`+-- is not valid. * \`NOT_FOUND\` if: * the specified \`feed\` cannot be+-- located, or the requesting user does not have permission to determine+-- whether or not it exists; or * the specified \`cloudPubsubTopic\` cannot+-- be located, or Classroom has not been granted permission to publish to+-- it.+--+-- /See:/ 'registrationsCreate' smart constructor.+data RegistrationsCreate = RegistrationsCreate'+ { _rcXgafv :: !(Maybe Xgafv)+ , _rcUploadProtocol :: !(Maybe Text)+ , _rcAccessToken :: !(Maybe Text)+ , _rcUploadType :: !(Maybe Text)+ , _rcPayload :: !Registration+ , _rcCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RegistrationsCreate' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rcXgafv'+--+-- * 'rcUploadProtocol'+--+-- * 'rcAccessToken'+--+-- * 'rcUploadType'+--+-- * 'rcPayload'+--+-- * 'rcCallback'+registrationsCreate+ :: Registration -- ^ 'rcPayload'+ -> RegistrationsCreate+registrationsCreate pRcPayload_ =+ RegistrationsCreate'+ { _rcXgafv = Nothing+ , _rcUploadProtocol = Nothing+ , _rcAccessToken = Nothing+ , _rcUploadType = Nothing+ , _rcPayload = pRcPayload_+ , _rcCallback = Nothing+ }++-- | V1 error format.+rcXgafv :: Lens' RegistrationsCreate (Maybe Xgafv)+rcXgafv = lens _rcXgafv (\ s a -> s{_rcXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+rcUploadProtocol :: Lens' RegistrationsCreate (Maybe Text)+rcUploadProtocol+ = lens _rcUploadProtocol+ (\ s a -> s{_rcUploadProtocol = a})++-- | OAuth access token.+rcAccessToken :: Lens' RegistrationsCreate (Maybe Text)+rcAccessToken+ = lens _rcAccessToken+ (\ s a -> s{_rcAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+rcUploadType :: Lens' RegistrationsCreate (Maybe Text)+rcUploadType+ = lens _rcUploadType (\ s a -> s{_rcUploadType = a})++-- | Multipart request metadata.+rcPayload :: Lens' RegistrationsCreate Registration+rcPayload+ = lens _rcPayload (\ s a -> s{_rcPayload = a})++-- | JSONP+rcCallback :: Lens' RegistrationsCreate (Maybe Text)+rcCallback+ = lens _rcCallback (\ s a -> s{_rcCallback = a})++instance GoogleRequest RegistrationsCreate where+ type Rs RegistrationsCreate = Registration+ type Scopes RegistrationsCreate =+ '["https://www.googleapis.com/auth/classroom.push-notifications"]+ requestClient RegistrationsCreate'{..}+ = go _rcXgafv _rcUploadProtocol _rcAccessToken+ _rcUploadType+ _rcCallback+ (Just AltJSON)+ _rcPayload+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy RegistrationsCreateResource)+ mempty
+ gen/Network/Google/Resource/Classroom/Registrations/Delete.hs view
@@ -0,0 +1,148 @@+{-# LANGUAGE DataKinds #-}+{-# LANGUAGE DeriveDataTypeable #-}+{-# LANGUAGE DeriveGeneric #-}+{-# LANGUAGE FlexibleInstances #-}+{-# LANGUAGE NoImplicitPrelude #-}+{-# LANGUAGE OverloadedStrings #-}+{-# LANGUAGE RecordWildCards #-}+{-# LANGUAGE TypeFamilies #-}+{-# LANGUAGE TypeOperators #-}++{-# OPTIONS_GHC -fno-warn-duplicate-exports #-}+{-# OPTIONS_GHC -fno-warn-unused-binds #-}+{-# OPTIONS_GHC -fno-warn-unused-imports #-}++-- |+-- Module : Network.Google.Resource.Classroom.Registrations.Delete+-- Copyright : (c) 2015-2016 Brendan Hay+-- License : Mozilla Public License, v. 2.0.+-- Maintainer : Brendan Hay <brendan.g.hay@gmail.com>+-- Stability : auto-generated+-- Portability : non-portable (GHC extensions)+--+-- Deletes a \`Registration\`, causing Classroom to stop sending+-- notifications for that \`Registration\`.+--+-- /See:/ <https://developers.google.com/classroom/ Google Classroom API Reference> for @classroom.registrations.delete@.+module Network.Google.Resource.Classroom.Registrations.Delete+ (+ -- * REST Resource+ RegistrationsDeleteResource++ -- * Creating a Request+ , registrationsDelete+ , RegistrationsDelete++ -- * Request Lenses+ , rdRegistrationId+ , rdXgafv+ , rdUploadProtocol+ , rdAccessToken+ , rdUploadType+ , rdCallback+ ) where++import Network.Google.Classroom.Types+import Network.Google.Prelude++-- | A resource alias for @classroom.registrations.delete@ method which the+-- 'RegistrationsDelete' request conforms to.+type RegistrationsDeleteResource =+ "v1" :>+ "registrations" :>+ Capture "registrationId" Text :>+ QueryParam "$.xgafv" Xgafv :>+ QueryParam "upload_protocol" Text :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty++-- | Deletes a \`Registration\`, causing Classroom to stop sending+-- notifications for that \`Registration\`.+--+-- /See:/ 'registrationsDelete' smart constructor.+data RegistrationsDelete = RegistrationsDelete'+ { _rdRegistrationId :: !Text+ , _rdXgafv :: !(Maybe Xgafv)+ , _rdUploadProtocol :: !(Maybe Text)+ , _rdAccessToken :: !(Maybe Text)+ , _rdUploadType :: !(Maybe Text)+ , _rdCallback :: !(Maybe Text)+ } deriving (Eq,Show,Data,Typeable,Generic)++-- | Creates a value of 'RegistrationsDelete' with the minimum fields required to make a request.+--+-- Use one of the following lenses to modify other fields as desired:+--+-- * 'rdRegistrationId'+--+-- * 'rdXgafv'+--+-- * 'rdUploadProtocol'+--+-- * 'rdAccessToken'+--+-- * 'rdUploadType'+--+-- * 'rdCallback'+registrationsDelete+ :: Text -- ^ 'rdRegistrationId'+ -> RegistrationsDelete+registrationsDelete pRdRegistrationId_ =+ RegistrationsDelete'+ { _rdRegistrationId = pRdRegistrationId_+ , _rdXgafv = Nothing+ , _rdUploadProtocol = Nothing+ , _rdAccessToken = Nothing+ , _rdUploadType = Nothing+ , _rdCallback = Nothing+ }++-- | The \`registration_id\` of the \`Registration\` to be deleted.+rdRegistrationId :: Lens' RegistrationsDelete Text+rdRegistrationId+ = lens _rdRegistrationId+ (\ s a -> s{_rdRegistrationId = a})++-- | V1 error format.+rdXgafv :: Lens' RegistrationsDelete (Maybe Xgafv)+rdXgafv = lens _rdXgafv (\ s a -> s{_rdXgafv = a})++-- | Upload protocol for media (e.g. \"raw\", \"multipart\").+rdUploadProtocol :: Lens' RegistrationsDelete (Maybe Text)+rdUploadProtocol+ = lens _rdUploadProtocol+ (\ s a -> s{_rdUploadProtocol = a})++-- | OAuth access token.+rdAccessToken :: Lens' RegistrationsDelete (Maybe Text)+rdAccessToken+ = lens _rdAccessToken+ (\ s a -> s{_rdAccessToken = a})++-- | Legacy upload protocol for media (e.g. \"media\", \"multipart\").+rdUploadType :: Lens' RegistrationsDelete (Maybe Text)+rdUploadType+ = lens _rdUploadType (\ s a -> s{_rdUploadType = a})++-- | JSONP+rdCallback :: Lens' RegistrationsDelete (Maybe Text)+rdCallback+ = lens _rdCallback (\ s a -> s{_rdCallback = a})++instance GoogleRequest RegistrationsDelete where+ type Rs RegistrationsDelete = Empty+ type Scopes RegistrationsDelete =+ '["https://www.googleapis.com/auth/classroom.push-notifications"]+ requestClient RegistrationsDelete'{..}+ = go _rdRegistrationId _rdXgafv _rdUploadProtocol+ _rdAccessToken+ _rdUploadType+ _rdCallback+ (Just AltJSON)+ classroomService+ where go+ = buildClient+ (Proxy :: Proxy RegistrationsDeleteResource)+ mempty
gen/Network/Google/Resource/Classroom/UserProFiles/Get.hs view
@@ -38,11 +38,9 @@ -- * Request Lenses , upfgXgafv , upfgUploadProtocol- , upfgPp , upfgAccessToken , upfgUploadType , upfgUserId- , upfgBearerToken , upfgCallback ) where @@ -55,14 +53,12 @@ "v1" :> "userProfiles" :> Capture "userId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] UserProFile+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] UserProFile -- | Returns a user profile. This method returns the following error codes: * -- \`PERMISSION_DENIED\` if the requesting user is not permitted to access@@ -71,13 +67,11 @@ -- -- /See:/ 'userProFilesGet' smart constructor. data UserProFilesGet = UserProFilesGet'- { _upfgXgafv :: !(Maybe Text)+ { _upfgXgafv :: !(Maybe Xgafv) , _upfgUploadProtocol :: !(Maybe Text)- , _upfgPp :: !Bool , _upfgAccessToken :: !(Maybe Text) , _upfgUploadType :: !(Maybe Text) , _upfgUserId :: !Text- , _upfgBearerToken :: !(Maybe Text) , _upfgCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -89,16 +83,12 @@ -- -- * 'upfgUploadProtocol' ----- * 'upfgPp'--- -- * 'upfgAccessToken' -- -- * 'upfgUploadType' -- -- * 'upfgUserId' ----- * 'upfgBearerToken'--- -- * 'upfgCallback' userProFilesGet :: Text -- ^ 'upfgUserId'@@ -107,16 +97,14 @@ UserProFilesGet' { _upfgXgafv = Nothing , _upfgUploadProtocol = Nothing- , _upfgPp = True , _upfgAccessToken = Nothing , _upfgUploadType = Nothing , _upfgUserId = pUpfgUserId_- , _upfgBearerToken = Nothing , _upfgCallback = Nothing } -- | V1 error format.-upfgXgafv :: Lens' UserProFilesGet (Maybe Text)+upfgXgafv :: Lens' UserProFilesGet (Maybe Xgafv) upfgXgafv = lens _upfgXgafv (\ s a -> s{_upfgXgafv = a}) @@ -126,10 +114,6 @@ = lens _upfgUploadProtocol (\ s a -> s{_upfgUploadProtocol = a}) --- | Pretty-print response.-upfgPp :: Lens' UserProFilesGet Bool-upfgPp = lens _upfgPp (\ s a -> s{_upfgPp = a})- -- | OAuth access token. upfgAccessToken :: Lens' UserProFilesGet (Maybe Text) upfgAccessToken@@ -149,12 +133,6 @@ upfgUserId = lens _upfgUserId (\ s a -> s{_upfgUserId = a}) --- | OAuth bearer token.-upfgBearerToken :: Lens' UserProFilesGet (Maybe Text)-upfgBearerToken- = lens _upfgBearerToken- (\ s a -> s{_upfgBearerToken = a})- -- | JSONP upfgCallback :: Lens' UserProFilesGet (Maybe Text) upfgCallback@@ -169,10 +147,8 @@ "https://www.googleapis.com/auth/classroom.rosters.readonly"] requestClient UserProFilesGet'{..} = go _upfgUserId _upfgXgafv _upfgUploadProtocol- (Just _upfgPp) _upfgAccessToken _upfgUploadType- _upfgBearerToken _upfgCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Create.hs view
@@ -59,11 +59,9 @@ , upfgicStudentId , upfgicXgafv , upfgicUploadProtocol- , upfgicPp , upfgicAccessToken , upfgicUploadType , upfgicPayload- , upfgicBearerToken , upfgicCallback ) where @@ -77,16 +75,14 @@ "userProfiles" :> Capture "studentId" Text :> "guardianInvitations" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] GuardianInvitation :>- Post '[JSON] GuardianInvitation+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] GuardianInvitation :>+ Post '[JSON] GuardianInvitation -- | Creates a guardian invitation, and sends an email to the guardian asking -- them to confirm that they are the student\'s guardian. Once the guardian@@ -116,13 +112,11 @@ -- /See:/ 'userProFilesGuardianInvitationsCreate' smart constructor. data UserProFilesGuardianInvitationsCreate = UserProFilesGuardianInvitationsCreate' { _upfgicStudentId :: !Text- , _upfgicXgafv :: !(Maybe Text)+ , _upfgicXgafv :: !(Maybe Xgafv) , _upfgicUploadProtocol :: !(Maybe Text)- , _upfgicPp :: !Bool , _upfgicAccessToken :: !(Maybe Text) , _upfgicUploadType :: !(Maybe Text) , _upfgicPayload :: !GuardianInvitation- , _upfgicBearerToken :: !(Maybe Text) , _upfgicCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -136,16 +130,12 @@ -- -- * 'upfgicUploadProtocol' ----- * 'upfgicPp'--- -- * 'upfgicAccessToken' -- -- * 'upfgicUploadType' -- -- * 'upfgicPayload' ----- * 'upfgicBearerToken'--- -- * 'upfgicCallback' userProFilesGuardianInvitationsCreate :: Text -- ^ 'upfgicStudentId'@@ -156,11 +146,9 @@ { _upfgicStudentId = pUpfgicStudentId_ , _upfgicXgafv = Nothing , _upfgicUploadProtocol = Nothing- , _upfgicPp = True , _upfgicAccessToken = Nothing , _upfgicUploadType = Nothing , _upfgicPayload = pUpfgicPayload_- , _upfgicBearerToken = Nothing , _upfgicCallback = Nothing } @@ -171,7 +159,7 @@ (\ s a -> s{_upfgicStudentId = a}) -- | V1 error format.-upfgicXgafv :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Text)+upfgicXgafv :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Xgafv) upfgicXgafv = lens _upfgicXgafv (\ s a -> s{_upfgicXgafv = a}) @@ -181,10 +169,6 @@ = lens _upfgicUploadProtocol (\ s a -> s{_upfgicUploadProtocol = a}) --- | Pretty-print response.-upfgicPp :: Lens' UserProFilesGuardianInvitationsCreate Bool-upfgicPp = lens _upfgicPp (\ s a -> s{_upfgicPp = a})- -- | OAuth access token. upfgicAccessToken :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Text) upfgicAccessToken@@ -203,12 +187,6 @@ = lens _upfgicPayload (\ s a -> s{_upfgicPayload = a}) --- | OAuth bearer token.-upfgicBearerToken :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Text)-upfgicBearerToken- = lens _upfgicBearerToken- (\ s a -> s{_upfgicBearerToken = a})- -- | JSONP upfgicCallback :: Lens' UserProFilesGuardianInvitationsCreate (Maybe Text) upfgicCallback@@ -220,15 +198,13 @@ type Rs UserProFilesGuardianInvitationsCreate = GuardianInvitation type Scopes UserProFilesGuardianInvitationsCreate =- '[]+ '["https://www.googleapis.com/auth/classroom.guardianlinks.students"] requestClient UserProFilesGuardianInvitationsCreate'{..} = go _upfgicStudentId _upfgicXgafv _upfgicUploadProtocol- (Just _upfgicPp) _upfgicAccessToken _upfgicUploadType- _upfgicBearerToken _upfgicCallback (Just AltJSON) _upfgicPayload
gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Get.hs view
@@ -46,11 +46,9 @@ , upfgigStudentId , upfgigXgafv , upfgigUploadProtocol- , upfgigPp , upfgigAccessToken , upfgigUploadType , upfgigInvitationId- , upfgigBearerToken , upfgigCallback ) where @@ -65,15 +63,13 @@ Capture "studentId" Text :> "guardianInvitations" :> Capture "invitationId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] GuardianInvitation+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] GuardianInvitation -- | Returns a specific guardian invitation. This method returns the -- following error codes: * \`PERMISSION_DENIED\` if the requesting user is@@ -90,13 +86,11 @@ -- /See:/ 'userProFilesGuardianInvitationsGet' smart constructor. data UserProFilesGuardianInvitationsGet = UserProFilesGuardianInvitationsGet' { _upfgigStudentId :: !Text- , _upfgigXgafv :: !(Maybe Text)+ , _upfgigXgafv :: !(Maybe Xgafv) , _upfgigUploadProtocol :: !(Maybe Text)- , _upfgigPp :: !Bool , _upfgigAccessToken :: !(Maybe Text) , _upfgigUploadType :: !(Maybe Text) , _upfgigInvitationId :: !Text- , _upfgigBearerToken :: !(Maybe Text) , _upfgigCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -110,16 +104,12 @@ -- -- * 'upfgigUploadProtocol' ----- * 'upfgigPp'--- -- * 'upfgigAccessToken' -- -- * 'upfgigUploadType' -- -- * 'upfgigInvitationId' ----- * 'upfgigBearerToken'--- -- * 'upfgigCallback' userProFilesGuardianInvitationsGet :: Text -- ^ 'upfgigStudentId'@@ -130,11 +120,9 @@ { _upfgigStudentId = pUpfgigStudentId_ , _upfgigXgafv = Nothing , _upfgigUploadProtocol = Nothing- , _upfgigPp = True , _upfgigAccessToken = Nothing , _upfgigUploadType = Nothing , _upfgigInvitationId = pUpfgigInvitationId_- , _upfgigBearerToken = Nothing , _upfgigCallback = Nothing } @@ -145,7 +133,7 @@ (\ s a -> s{_upfgigStudentId = a}) -- | V1 error format.-upfgigXgafv :: Lens' UserProFilesGuardianInvitationsGet (Maybe Text)+upfgigXgafv :: Lens' UserProFilesGuardianInvitationsGet (Maybe Xgafv) upfgigXgafv = lens _upfgigXgafv (\ s a -> s{_upfgigXgafv = a}) @@ -155,10 +143,6 @@ = lens _upfgigUploadProtocol (\ s a -> s{_upfgigUploadProtocol = a}) --- | Pretty-print response.-upfgigPp :: Lens' UserProFilesGuardianInvitationsGet Bool-upfgigPp = lens _upfgigPp (\ s a -> s{_upfgigPp = a})- -- | OAuth access token. upfgigAccessToken :: Lens' UserProFilesGuardianInvitationsGet (Maybe Text) upfgigAccessToken@@ -177,12 +161,6 @@ = lens _upfgigInvitationId (\ s a -> s{_upfgigInvitationId = a}) --- | OAuth bearer token.-upfgigBearerToken :: Lens' UserProFilesGuardianInvitationsGet (Maybe Text)-upfgigBearerToken- = lens _upfgigBearerToken- (\ s a -> s{_upfgigBearerToken = a})- -- | JSONP upfgigCallback :: Lens' UserProFilesGuardianInvitationsGet (Maybe Text) upfgigCallback@@ -193,15 +171,15 @@ UserProFilesGuardianInvitationsGet where type Rs UserProFilesGuardianInvitationsGet = GuardianInvitation- type Scopes UserProFilesGuardianInvitationsGet = '[]+ type Scopes UserProFilesGuardianInvitationsGet =+ '["https://www.googleapis.com/auth/classroom.guardianlinks.students",+ "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"] requestClient UserProFilesGuardianInvitationsGet'{..} = go _upfgigStudentId _upfgigInvitationId _upfgigXgafv _upfgigUploadProtocol- (Just _upfgigPp) _upfgigAccessToken _upfgigUploadType- _upfgigBearerToken _upfgigCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/List.hs view
@@ -49,10 +49,8 @@ , upfgilStates , upfgilXgafv , upfgilUploadProtocol- , upfgilPp , upfgilAccessToken , upfgilUploadType- , upfgilBearerToken , upfgilInvitedEmailAddress , upfgilPageToken , upfgilPageSize@@ -70,18 +68,16 @@ Capture "studentId" Text :> "guardianInvitations" :> QueryParams "states" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "invitedEmailAddress" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListGuardianInvitationsResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "invitedEmailAddress" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListGuardianInvitationsResponse -- | Returns a list of guardian invitations that the requesting user is -- permitted to view, filtered by the parameters provided. This method@@ -101,12 +97,10 @@ data UserProFilesGuardianInvitationsList = UserProFilesGuardianInvitationsList' { _upfgilStudentId :: !Text , _upfgilStates :: !(Maybe [Text])- , _upfgilXgafv :: !(Maybe Text)+ , _upfgilXgafv :: !(Maybe Xgafv) , _upfgilUploadProtocol :: !(Maybe Text)- , _upfgilPp :: !Bool , _upfgilAccessToken :: !(Maybe Text) , _upfgilUploadType :: !(Maybe Text)- , _upfgilBearerToken :: !(Maybe Text) , _upfgilInvitedEmailAddress :: !(Maybe Text) , _upfgilPageToken :: !(Maybe Text) , _upfgilPageSize :: !(Maybe (Textual Int32))@@ -125,14 +119,10 @@ -- -- * 'upfgilUploadProtocol' ----- * 'upfgilPp'--- -- * 'upfgilAccessToken' -- -- * 'upfgilUploadType' ----- * 'upfgilBearerToken'--- -- * 'upfgilInvitedEmailAddress' -- -- * 'upfgilPageToken'@@ -149,10 +139,8 @@ , _upfgilStates = Nothing , _upfgilXgafv = Nothing , _upfgilUploadProtocol = Nothing- , _upfgilPp = True , _upfgilAccessToken = Nothing , _upfgilUploadType = Nothing- , _upfgilBearerToken = Nothing , _upfgilInvitedEmailAddress = Nothing , _upfgilPageToken = Nothing , _upfgilPageSize = Nothing@@ -180,7 +168,7 @@ . _Coerce -- | V1 error format.-upfgilXgafv :: Lens' UserProFilesGuardianInvitationsList (Maybe Text)+upfgilXgafv :: Lens' UserProFilesGuardianInvitationsList (Maybe Xgafv) upfgilXgafv = lens _upfgilXgafv (\ s a -> s{_upfgilXgafv = a}) @@ -190,10 +178,6 @@ = lens _upfgilUploadProtocol (\ s a -> s{_upfgilUploadProtocol = a}) --- | Pretty-print response.-upfgilPp :: Lens' UserProFilesGuardianInvitationsList Bool-upfgilPp = lens _upfgilPp (\ s a -> s{_upfgilPp = a})- -- | OAuth access token. upfgilAccessToken :: Lens' UserProFilesGuardianInvitationsList (Maybe Text) upfgilAccessToken@@ -206,12 +190,6 @@ = lens _upfgilUploadType (\ s a -> s{_upfgilUploadType = a}) --- | OAuth bearer token.-upfgilBearerToken :: Lens' UserProFilesGuardianInvitationsList (Maybe Text)-upfgilBearerToken- = lens _upfgilBearerToken- (\ s a -> s{_upfgilBearerToken = a})- -- | If specified, only results with the specified \`invited_email_address\` -- will be returned. upfgilInvitedEmailAddress :: Lens' UserProFilesGuardianInvitationsList (Maybe Text)@@ -246,16 +224,16 @@ UserProFilesGuardianInvitationsList where type Rs UserProFilesGuardianInvitationsList = ListGuardianInvitationsResponse- type Scopes UserProFilesGuardianInvitationsList = '[]+ type Scopes UserProFilesGuardianInvitationsList =+ '["https://www.googleapis.com/auth/classroom.guardianlinks.students",+ "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"] requestClient UserProFilesGuardianInvitationsList'{..} = go _upfgilStudentId (_upfgilStates ^. _Default) _upfgilXgafv _upfgilUploadProtocol- (Just _upfgilPp) _upfgilAccessToken _upfgilUploadType- _upfgilBearerToken _upfgilInvitedEmailAddress _upfgilPageToken _upfgilPageSize
gen/Network/Google/Resource/Classroom/UserProFiles/GuardianInvitations/Patch.hs view
@@ -50,12 +50,10 @@ , upfgipXgafv , upfgipUploadProtocol , upfgipUpdateMask- , upfgipPp , upfgipAccessToken , upfgipUploadType , upfgipPayload , upfgipInvitationId- , upfgipBearerToken , upfgipCallback ) where @@ -70,17 +68,15 @@ Capture "studentId" Text :> "guardianInvitations" :> Capture "invitationId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "updateMask" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- ReqBody '[JSON] GuardianInvitation :>- Patch '[JSON] GuardianInvitation+ QueryParam "updateMask" GFieldMask :>+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ ReqBody '[JSON] GuardianInvitation :>+ Patch '[JSON] GuardianInvitation -- | Modifies a guardian invitation. Currently, the only valid modification -- is to change the \`state\` from \`PENDING\` to \`COMPLETE\`. This has@@ -100,15 +96,13 @@ -- /See:/ 'userProFilesGuardianInvitationsPatch' smart constructor. data UserProFilesGuardianInvitationsPatch = UserProFilesGuardianInvitationsPatch' { _upfgipStudentId :: !Text- , _upfgipXgafv :: !(Maybe Text)+ , _upfgipXgafv :: !(Maybe Xgafv) , _upfgipUploadProtocol :: !(Maybe Text)- , _upfgipUpdateMask :: !(Maybe Text)- , _upfgipPp :: !Bool+ , _upfgipUpdateMask :: !(Maybe GFieldMask) , _upfgipAccessToken :: !(Maybe Text) , _upfgipUploadType :: !(Maybe Text) , _upfgipPayload :: !GuardianInvitation , _upfgipInvitationId :: !Text- , _upfgipBearerToken :: !(Maybe Text) , _upfgipCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -124,8 +118,6 @@ -- -- * 'upfgipUpdateMask' ----- * 'upfgipPp'--- -- * 'upfgipAccessToken' -- -- * 'upfgipUploadType'@@ -134,8 +126,6 @@ -- -- * 'upfgipInvitationId' ----- * 'upfgipBearerToken'--- -- * 'upfgipCallback' userProFilesGuardianInvitationsPatch :: Text -- ^ 'upfgipStudentId'@@ -148,12 +138,10 @@ , _upfgipXgafv = Nothing , _upfgipUploadProtocol = Nothing , _upfgipUpdateMask = Nothing- , _upfgipPp = True , _upfgipAccessToken = Nothing , _upfgipUploadType = Nothing , _upfgipPayload = pUpfgipPayload_ , _upfgipInvitationId = pUpfgipInvitationId_- , _upfgipBearerToken = Nothing , _upfgipCallback = Nothing } @@ -164,7 +152,7 @@ (\ s a -> s{_upfgipStudentId = a}) -- | V1 error format.-upfgipXgafv :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text)+upfgipXgafv :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Xgafv) upfgipXgafv = lens _upfgipXgafv (\ s a -> s{_upfgipXgafv = a}) @@ -178,15 +166,11 @@ -- required to do an update. The update will fail if invalid fields are -- specified. The following fields are valid: * \`state\` When set in a -- query parameter, this field should be specified as \`updateMask=,,...\`-upfgipUpdateMask :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text)+upfgipUpdateMask :: Lens' UserProFilesGuardianInvitationsPatch (Maybe GFieldMask) upfgipUpdateMask = lens _upfgipUpdateMask (\ s a -> s{_upfgipUpdateMask = a}) --- | Pretty-print response.-upfgipPp :: Lens' UserProFilesGuardianInvitationsPatch Bool-upfgipPp = lens _upfgipPp (\ s a -> s{_upfgipPp = a})- -- | OAuth access token. upfgipAccessToken :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text) upfgipAccessToken@@ -211,12 +195,6 @@ = lens _upfgipInvitationId (\ s a -> s{_upfgipInvitationId = a}) --- | OAuth bearer token.-upfgipBearerToken :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text)-upfgipBearerToken- = lens _upfgipBearerToken- (\ s a -> s{_upfgipBearerToken = a})- -- | JSONP upfgipCallback :: Lens' UserProFilesGuardianInvitationsPatch (Maybe Text) upfgipCallback@@ -228,17 +206,15 @@ type Rs UserProFilesGuardianInvitationsPatch = GuardianInvitation type Scopes UserProFilesGuardianInvitationsPatch =- '[]+ '["https://www.googleapis.com/auth/classroom.guardianlinks.students"] requestClient UserProFilesGuardianInvitationsPatch'{..} = go _upfgipStudentId _upfgipInvitationId _upfgipXgafv _upfgipUploadProtocol _upfgipUpdateMask- (Just _upfgipPp) _upfgipAccessToken _upfgipUploadType- _upfgipBearerToken _upfgipCallback (Just AltJSON) _upfgipPayload
gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/Delete.hs view
@@ -47,11 +47,9 @@ , upfgdStudentId , upfgdXgafv , upfgdUploadProtocol- , upfgdPp , upfgdAccessToken , upfgdUploadType , upfgdGuardianId- , upfgdBearerToken , upfgdCallback ) where @@ -66,14 +64,12 @@ Capture "studentId" Text :> "guardians" :> Capture "guardianId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Delete '[JSON] Empty+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Delete '[JSON] Empty -- | Deletes a guardian. The guardian will no longer receive guardian -- notifications and the guardian will no longer be accessible via the API.@@ -91,13 +87,11 @@ -- /See:/ 'userProFilesGuardiansDelete' smart constructor. data UserProFilesGuardiansDelete = UserProFilesGuardiansDelete' { _upfgdStudentId :: !Text- , _upfgdXgafv :: !(Maybe Text)+ , _upfgdXgafv :: !(Maybe Xgafv) , _upfgdUploadProtocol :: !(Maybe Text)- , _upfgdPp :: !Bool , _upfgdAccessToken :: !(Maybe Text) , _upfgdUploadType :: !(Maybe Text) , _upfgdGuardianId :: !Text- , _upfgdBearerToken :: !(Maybe Text) , _upfgdCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -111,16 +105,12 @@ -- -- * 'upfgdUploadProtocol' ----- * 'upfgdPp'--- -- * 'upfgdAccessToken' -- -- * 'upfgdUploadType' -- -- * 'upfgdGuardianId' ----- * 'upfgdBearerToken'--- -- * 'upfgdCallback' userProFilesGuardiansDelete :: Text -- ^ 'upfgdStudentId'@@ -131,11 +121,9 @@ { _upfgdStudentId = pUpfgdStudentId_ , _upfgdXgafv = Nothing , _upfgdUploadProtocol = Nothing- , _upfgdPp = True , _upfgdAccessToken = Nothing , _upfgdUploadType = Nothing , _upfgdGuardianId = pUpfgdGuardianId_- , _upfgdBearerToken = Nothing , _upfgdCallback = Nothing } @@ -148,7 +136,7 @@ (\ s a -> s{_upfgdStudentId = a}) -- | V1 error format.-upfgdXgafv :: Lens' UserProFilesGuardiansDelete (Maybe Text)+upfgdXgafv :: Lens' UserProFilesGuardiansDelete (Maybe Xgafv) upfgdXgafv = lens _upfgdXgafv (\ s a -> s{_upfgdXgafv = a}) @@ -158,10 +146,6 @@ = lens _upfgdUploadProtocol (\ s a -> s{_upfgdUploadProtocol = a}) --- | Pretty-print response.-upfgdPp :: Lens' UserProFilesGuardiansDelete Bool-upfgdPp = lens _upfgdPp (\ s a -> s{_upfgdPp = a})- -- | OAuth access token. upfgdAccessToken :: Lens' UserProFilesGuardiansDelete (Maybe Text) upfgdAccessToken@@ -180,12 +164,6 @@ = lens _upfgdGuardianId (\ s a -> s{_upfgdGuardianId = a}) --- | OAuth bearer token.-upfgdBearerToken :: Lens' UserProFilesGuardiansDelete (Maybe Text)-upfgdBearerToken- = lens _upfgdBearerToken- (\ s a -> s{_upfgdBearerToken = a})- -- | JSONP upfgdCallback :: Lens' UserProFilesGuardiansDelete (Maybe Text) upfgdCallback@@ -195,14 +173,13 @@ instance GoogleRequest UserProFilesGuardiansDelete where type Rs UserProFilesGuardiansDelete = Empty- type Scopes UserProFilesGuardiansDelete = '[]+ type Scopes UserProFilesGuardiansDelete =+ '["https://www.googleapis.com/auth/classroom.guardianlinks.students"] requestClient UserProFilesGuardiansDelete'{..} = go _upfgdStudentId _upfgdGuardianId _upfgdXgafv _upfgdUploadProtocol- (Just _upfgdPp) _upfgdAccessToken _upfgdUploadType- _upfgdBearerToken _upfgdCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/Get.hs view
@@ -47,11 +47,9 @@ , upfggStudentId , upfggXgafv , upfggUploadProtocol- , upfggPp , upfggAccessToken , upfggUploadType , upfggGuardianId- , upfggBearerToken , upfggCallback ) where @@ -66,14 +64,12 @@ Capture "studentId" Text :> "guardians" :> Capture "guardianId" Text :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :> Get '[JSON] Guardian+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :> Get '[JSON] Guardian -- | Returns a specific guardian. This method returns the following error -- codes: * \`PERMISSION_DENIED\` if no user that matches the provided@@ -91,13 +87,11 @@ -- /See:/ 'userProFilesGuardiansGet' smart constructor. data UserProFilesGuardiansGet = UserProFilesGuardiansGet' { _upfggStudentId :: !Text- , _upfggXgafv :: !(Maybe Text)+ , _upfggXgafv :: !(Maybe Xgafv) , _upfggUploadProtocol :: !(Maybe Text)- , _upfggPp :: !Bool , _upfggAccessToken :: !(Maybe Text) , _upfggUploadType :: !(Maybe Text) , _upfggGuardianId :: !Text- , _upfggBearerToken :: !(Maybe Text) , _upfggCallback :: !(Maybe Text) } deriving (Eq,Show,Data,Typeable,Generic) @@ -111,16 +105,12 @@ -- -- * 'upfggUploadProtocol' ----- * 'upfggPp'--- -- * 'upfggAccessToken' -- -- * 'upfggUploadType' -- -- * 'upfggGuardianId' ----- * 'upfggBearerToken'--- -- * 'upfggCallback' userProFilesGuardiansGet :: Text -- ^ 'upfggStudentId'@@ -131,11 +121,9 @@ { _upfggStudentId = pUpfggStudentId_ , _upfggXgafv = Nothing , _upfggUploadProtocol = Nothing- , _upfggPp = True , _upfggAccessToken = Nothing , _upfggUploadType = Nothing , _upfggGuardianId = pUpfggGuardianId_- , _upfggBearerToken = Nothing , _upfggCallback = Nothing } @@ -148,7 +136,7 @@ (\ s a -> s{_upfggStudentId = a}) -- | V1 error format.-upfggXgafv :: Lens' UserProFilesGuardiansGet (Maybe Text)+upfggXgafv :: Lens' UserProFilesGuardiansGet (Maybe Xgafv) upfggXgafv = lens _upfggXgafv (\ s a -> s{_upfggXgafv = a}) @@ -158,10 +146,6 @@ = lens _upfggUploadProtocol (\ s a -> s{_upfggUploadProtocol = a}) --- | Pretty-print response.-upfggPp :: Lens' UserProFilesGuardiansGet Bool-upfggPp = lens _upfggPp (\ s a -> s{_upfggPp = a})- -- | OAuth access token. upfggAccessToken :: Lens' UserProFilesGuardiansGet (Maybe Text) upfggAccessToken@@ -180,12 +164,6 @@ = lens _upfggGuardianId (\ s a -> s{_upfggGuardianId = a}) --- | OAuth bearer token.-upfggBearerToken :: Lens' UserProFilesGuardiansGet (Maybe Text)-upfggBearerToken- = lens _upfggBearerToken- (\ s a -> s{_upfggBearerToken = a})- -- | JSONP upfggCallback :: Lens' UserProFilesGuardiansGet (Maybe Text) upfggCallback@@ -194,14 +172,15 @@ instance GoogleRequest UserProFilesGuardiansGet where type Rs UserProFilesGuardiansGet = Guardian- type Scopes UserProFilesGuardiansGet = '[]+ type Scopes UserProFilesGuardiansGet =+ '["https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly",+ "https://www.googleapis.com/auth/classroom.guardianlinks.students",+ "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"] requestClient UserProFilesGuardiansGet'{..} = go _upfggStudentId _upfggGuardianId _upfggXgafv _upfggUploadProtocol- (Just _upfggPp) _upfggAccessToken _upfggUploadType- _upfggBearerToken _upfggCallback (Just AltJSON) classroomService
gen/Network/Google/Resource/Classroom/UserProFiles/Guardians/List.hs view
@@ -51,10 +51,8 @@ , upfglStudentId , upfglXgafv , upfglUploadProtocol- , upfglPp , upfglAccessToken , upfglUploadType- , upfglBearerToken , upfglInvitedEmailAddress , upfglPageToken , upfglPageSize@@ -71,18 +69,16 @@ "userProfiles" :> Capture "studentId" Text :> "guardians" :>- QueryParam "$.xgafv" Text :>+ QueryParam "$.xgafv" Xgafv :> QueryParam "upload_protocol" Text :>- QueryParam "pp" Bool :>- QueryParam "access_token" Text :>- QueryParam "uploadType" Text :>- QueryParam "bearer_token" Text :>- QueryParam "invitedEmailAddress" Text :>- QueryParam "pageToken" Text :>- QueryParam "pageSize" (Textual Int32) :>- QueryParam "callback" Text :>- QueryParam "alt" AltJSON :>- Get '[JSON] ListGuardiansResponse+ QueryParam "access_token" Text :>+ QueryParam "uploadType" Text :>+ QueryParam "invitedEmailAddress" Text :>+ QueryParam "pageToken" Text :>+ QueryParam "pageSize" (Textual Int32) :>+ QueryParam "callback" Text :>+ QueryParam "alt" AltJSON :>+ Get '[JSON] ListGuardiansResponse -- | Returns a list of guardians that the requesting user is permitted to -- view, restricted to those that match the request. To list guardians for@@ -104,12 +100,10 @@ -- /See:/ 'userProFilesGuardiansList' smart constructor. data UserProFilesGuardiansList = UserProFilesGuardiansList' { _upfglStudentId :: !Text- , _upfglXgafv :: !(Maybe Text)+ , _upfglXgafv :: !(Maybe Xgafv) , _upfglUploadProtocol :: !(Maybe Text)- , _upfglPp :: !Bool , _upfglAccessToken :: !(Maybe Text) , _upfglUploadType :: !(Maybe Text)- , _upfglBearerToken :: !(Maybe Text) , _upfglInvitedEmailAddress :: !(Maybe Text) , _upfglPageToken :: !(Maybe Text) , _upfglPageSize :: !(Maybe (Textual Int32))@@ -126,14 +120,10 @@ -- -- * 'upfglUploadProtocol' ----- * 'upfglPp'--- -- * 'upfglAccessToken' -- -- * 'upfglUploadType' ----- * 'upfglBearerToken'--- -- * 'upfglInvitedEmailAddress' -- -- * 'upfglPageToken'@@ -149,10 +139,8 @@ { _upfglStudentId = pUpfglStudentId_ , _upfglXgafv = Nothing , _upfglUploadProtocol = Nothing- , _upfglPp = True , _upfglAccessToken = Nothing , _upfglUploadType = Nothing- , _upfglBearerToken = Nothing , _upfglInvitedEmailAddress = Nothing , _upfglPageToken = Nothing , _upfglPageSize = Nothing@@ -171,7 +159,7 @@ (\ s a -> s{_upfglStudentId = a}) -- | V1 error format.-upfglXgafv :: Lens' UserProFilesGuardiansList (Maybe Text)+upfglXgafv :: Lens' UserProFilesGuardiansList (Maybe Xgafv) upfglXgafv = lens _upfglXgafv (\ s a -> s{_upfglXgafv = a}) @@ -181,10 +169,6 @@ = lens _upfglUploadProtocol (\ s a -> s{_upfglUploadProtocol = a}) --- | Pretty-print response.-upfglPp :: Lens' UserProFilesGuardiansList Bool-upfglPp = lens _upfglPp (\ s a -> s{_upfglPp = a})- -- | OAuth access token. upfglAccessToken :: Lens' UserProFilesGuardiansList (Maybe Text) upfglAccessToken@@ -197,12 +181,6 @@ = lens _upfglUploadType (\ s a -> s{_upfglUploadType = a}) --- | OAuth bearer token.-upfglBearerToken :: Lens' UserProFilesGuardiansList (Maybe Text)-upfglBearerToken- = lens _upfglBearerToken- (\ s a -> s{_upfglBearerToken = a})- -- | Filter results by the email address that the original invitation was -- sent to, resulting in this guardian link. This filter can only be used -- by domain administrators.@@ -238,13 +216,14 @@ where type Rs UserProFilesGuardiansList = ListGuardiansResponse- type Scopes UserProFilesGuardiansList = '[]+ type Scopes UserProFilesGuardiansList =+ '["https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly",+ "https://www.googleapis.com/auth/classroom.guardianlinks.students",+ "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly"] requestClient UserProFilesGuardiansList'{..} = go _upfglStudentId _upfglXgafv _upfglUploadProtocol- (Just _upfglPp) _upfglAccessToken _upfglUploadType- _upfglBearerToken _upfglInvitedEmailAddress _upfglPageToken _upfglPageSize
gogol-classroom.cabal view
@@ -1,5 +1,5 @@ name: gogol-classroom-version: 0.3.0+version: 0.4.0 synopsis: Google Classroom SDK. homepage: https://github.com/brendanhay/gogol bug-reports: https://github.com/brendanhay/gogol/issues@@ -38,10 +38,17 @@ , Network.Google.Resource.Classroom.Courses.Aliases.Create , Network.Google.Resource.Classroom.Courses.Aliases.Delete , Network.Google.Resource.Classroom.Courses.Aliases.List+ , Network.Google.Resource.Classroom.Courses.Announcements.Create+ , Network.Google.Resource.Classroom.Courses.Announcements.Delete+ , Network.Google.Resource.Classroom.Courses.Announcements.Get+ , Network.Google.Resource.Classroom.Courses.Announcements.List+ , Network.Google.Resource.Classroom.Courses.Announcements.ModifyAssignees+ , Network.Google.Resource.Classroom.Courses.Announcements.Patch , Network.Google.Resource.Classroom.Courses.CourseWork.Create , Network.Google.Resource.Classroom.Courses.CourseWork.Delete , Network.Google.Resource.Classroom.Courses.CourseWork.Get , Network.Google.Resource.Classroom.Courses.CourseWork.List+ , Network.Google.Resource.Classroom.Courses.CourseWork.ModifyAssignees , Network.Google.Resource.Classroom.Courses.CourseWork.Patch , Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.Get , Network.Google.Resource.Classroom.Courses.CourseWork.StudentSubmissions.List@@ -69,6 +76,8 @@ , Network.Google.Resource.Classroom.Invitations.Delete , Network.Google.Resource.Classroom.Invitations.Get , Network.Google.Resource.Classroom.Invitations.List+ , Network.Google.Resource.Classroom.Registrations.Create+ , Network.Google.Resource.Classroom.Registrations.Delete , Network.Google.Resource.Classroom.UserProFiles.Get , Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Create , Network.Google.Resource.Classroom.UserProFiles.GuardianInvitations.Get@@ -83,5 +92,5 @@ , Network.Google.Classroom.Types.Sum build-depends:- gogol-core == 0.3.0.*+ gogol-core == 0.4.0.* , base >= 4.7 && < 5