Copyright | (c) 2015 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) |
Safe Haskell | None |
Language | Haskell2010 |
- Service Configuration
- API Declaration
- Resources
- classroom.courses.aliases.create
- classroom.courses.aliases.delete
- classroom.courses.aliases.list
- classroom.courses.create
- classroom.courses.delete
- classroom.courses.get
- classroom.courses.list
- classroom.courses.patch
- classroom.courses.students.create
- classroom.courses.students.delete
- classroom.courses.students.get
- classroom.courses.students.list
- classroom.courses.teachers.create
- classroom.courses.teachers.delete
- classroom.courses.teachers.get
- classroom.courses.teachers.list
- classroom.courses.update
- classroom.invitations.accept
- classroom.invitations.create
- classroom.invitations.delete
- classroom.invitations.get
- classroom.invitations.list
- classroom.userProfiles.get
- Types
Google Classroom API
- classroomService :: Service
- type ClassroomAPI = InvitationsListResource :<|> (InvitationsAcceptResource :<|> (InvitationsGetResource :<|> (InvitationsCreateResource :<|> (InvitationsDeleteResource :<|> (CoursesTeachersListResource :<|> (CoursesTeachersGetResource :<|> (CoursesTeachersCreateResource :<|> (CoursesTeachersDeleteResource :<|> (CoursesAliasesListResource :<|> (CoursesAliasesCreateResource :<|> (CoursesAliasesDeleteResource :<|> (CoursesStudentsListResource :<|> (CoursesStudentsGetResource :<|> (CoursesStudentsCreateResource :<|> (CoursesStudentsDeleteResource :<|> (CoursesListResource :<|> (CoursesPatchResource :<|> (CoursesGetResource :<|> (CoursesCreateResource :<|> (CoursesDeleteResource :<|> (CoursesUpdateResource :<|> UserProFilesGetResource)))))))))))))))))))))
- module Network.Google.Resource.Classroom.Courses.Aliases.Create
- module Network.Google.Resource.Classroom.Courses.Aliases.Delete
- module Network.Google.Resource.Classroom.Courses.Aliases.List
- module Network.Google.Resource.Classroom.Courses.Create
- module Network.Google.Resource.Classroom.Courses.Delete
- module Network.Google.Resource.Classroom.Courses.Get
- module Network.Google.Resource.Classroom.Courses.List
- module Network.Google.Resource.Classroom.Courses.Patch
- module Network.Google.Resource.Classroom.Courses.Students.Create
- module Network.Google.Resource.Classroom.Courses.Students.Delete
- module Network.Google.Resource.Classroom.Courses.Students.Get
- module Network.Google.Resource.Classroom.Courses.Students.List
- module Network.Google.Resource.Classroom.Courses.Teachers.Create
- module Network.Google.Resource.Classroom.Courses.Teachers.Delete
- module Network.Google.Resource.Classroom.Courses.Teachers.Get
- module Network.Google.Resource.Classroom.Courses.Teachers.List
- module Network.Google.Resource.Classroom.Courses.Update
- module Network.Google.Resource.Classroom.Invitations.Accept
- module Network.Google.Resource.Classroom.Invitations.Create
- module Network.Google.Resource.Classroom.Invitations.Delete
- module Network.Google.Resource.Classroom.Invitations.Get
- module Network.Google.Resource.Classroom.Invitations.List
- module Network.Google.Resource.Classroom.UserProFiles.Get
- data ListCourseAliasesResponse
- listCourseAliasesResponse :: ListCourseAliasesResponse
- lcarNextPageToken :: Lens' ListCourseAliasesResponse (Maybe Text)
- lcarAliases :: Lens' ListCourseAliasesResponse [CourseAlias]
- data Empty
- empty :: Empty
- data GlobalPermission
- globalPermission :: GlobalPermission
- gpPermission :: Lens' GlobalPermission (Maybe Text)
- data ListInvitationsResponse
- listInvitationsResponse :: ListInvitationsResponse
- lirNextPageToken :: Lens' ListInvitationsResponse (Maybe Text)
- lirInvitations :: Lens' ListInvitationsResponse [Invitation]
- data Invitation
- invitation :: Invitation
- iCourseId :: Lens' Invitation (Maybe Text)
- iUserId :: Lens' Invitation (Maybe Text)
- iRole :: Lens' Invitation (Maybe Text)
- iId :: Lens' Invitation (Maybe Text)
- data Teacher
- teacher :: Teacher
- tCourseId :: Lens' Teacher (Maybe Text)
- tProFile :: Lens' Teacher (Maybe UserProFile)
- tUserId :: Lens' Teacher (Maybe Text)
- data Name
- name :: Name
- nGivenName :: Lens' Name (Maybe Text)
- nFullName :: Lens' Name (Maybe Text)
- nFamilyName :: Lens' Name (Maybe Text)
- data ListCoursesResponse
- listCoursesResponse :: ListCoursesResponse
- lcrNextPageToken :: Lens' ListCoursesResponse (Maybe Text)
- lcrCourses :: Lens' ListCoursesResponse [Course]
- data UserProFile
- userProFile :: UserProFile
- upfPhotoURL :: Lens' UserProFile (Maybe Text)
- upfName :: Lens' UserProFile (Maybe Name)
- upfEmailAddress :: Lens' UserProFile (Maybe Text)
- upfId :: Lens' UserProFile (Maybe Text)
- upfPermissions :: Lens' UserProFile [GlobalPermission]
- data Course
- course :: Course
- cCreationTime :: Lens' Course (Maybe Text)
- cRoom :: Lens' Course (Maybe Text)
- cCourseState :: Lens' Course (Maybe Text)
- cEnrollmentCode :: Lens' Course (Maybe Text)
- cUpdateTime :: Lens' Course (Maybe Text)
- cOwnerId :: Lens' Course (Maybe Text)
- cName :: Lens' Course (Maybe Text)
- cId :: Lens' Course (Maybe Text)
- cAlternateLink :: Lens' Course (Maybe Text)
- cDescription :: Lens' Course (Maybe Text)
- cDescriptionHeading :: Lens' Course (Maybe Text)
- cSection :: Lens' Course (Maybe Text)
- data ListStudentsResponse
- listStudentsResponse :: ListStudentsResponse
- lsrNextPageToken :: Lens' ListStudentsResponse (Maybe Text)
- lsrStudents :: Lens' ListStudentsResponse [Student]
- data CourseAlias
- courseAlias :: CourseAlias
- caAlias :: Lens' CourseAlias (Maybe Text)
- data ListTeachersResponse
- listTeachersResponse :: ListTeachersResponse
- ltrNextPageToken :: Lens' ListTeachersResponse (Maybe Text)
- ltrTeachers :: Lens' ListTeachersResponse [Teacher]
- data Student
- student :: Student
- sCourseId :: Lens' Student (Maybe Text)
- sProFile :: Lens' Student (Maybe UserProFile)
- sUserId :: Lens' Student (Maybe Text)
Service Configuration
classroomService :: Service Source
Default request referring to version v1
of the Google Classroom API. This contains the host and root path used as a starting point for constructing service requests.
API Declaration
type ClassroomAPI = InvitationsListResource :<|> (InvitationsAcceptResource :<|> (InvitationsGetResource :<|> (InvitationsCreateResource :<|> (InvitationsDeleteResource :<|> (CoursesTeachersListResource :<|> (CoursesTeachersGetResource :<|> (CoursesTeachersCreateResource :<|> (CoursesTeachersDeleteResource :<|> (CoursesAliasesListResource :<|> (CoursesAliasesCreateResource :<|> (CoursesAliasesDeleteResource :<|> (CoursesStudentsListResource :<|> (CoursesStudentsGetResource :<|> (CoursesStudentsCreateResource :<|> (CoursesStudentsDeleteResource :<|> (CoursesListResource :<|> (CoursesPatchResource :<|> (CoursesGetResource :<|> (CoursesCreateResource :<|> (CoursesDeleteResource :<|> (CoursesUpdateResource :<|> UserProFilesGetResource))))))))))))))))))))) Source
Represents the entirety of the methods and resources available for the Google Classroom API service.
Resources
classroom.courses.aliases.create
classroom.courses.aliases.delete
classroom.courses.aliases.list
classroom.courses.create
classroom.courses.delete
classroom.courses.get
classroom.courses.list
classroom.courses.patch
classroom.courses.students.create
classroom.courses.students.delete
classroom.courses.students.get
classroom.courses.students.list
classroom.courses.teachers.create
classroom.courses.teachers.delete
classroom.courses.teachers.get
classroom.courses.teachers.list
classroom.courses.update
classroom.invitations.accept
classroom.invitations.create
classroom.invitations.delete
classroom.invitations.get
classroom.invitations.list
classroom.userProfiles.get
Types
ListCourseAliasesResponse
data ListCourseAliasesResponse Source
Response when listing course aliases.
See: listCourseAliasesResponse
smart constructor.
listCourseAliasesResponse :: ListCourseAliasesResponse Source
Creates a value of ListCourseAliasesResponse
with the minimum fields required to make a request.
Use one of the following lenses to modify other fields as desired:
lcarNextPageToken :: Lens' ListCourseAliasesResponse (Maybe Text) Source
Token identifying the next page of results to return. If empty, no further results are available.
lcarAliases :: Lens' ListCourseAliasesResponse [CourseAlias] Source
The course aliases.
Empty
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.
GlobalPermission
data GlobalPermission Source
Global user permission description.
See: globalPermission
smart constructor.
globalPermission :: GlobalPermission Source
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 :: Lens' GlobalPermission (Maybe Text) Source
Permission value.
ListInvitationsResponse
data ListInvitationsResponse Source
Response when listing invitations.
See: listInvitationsResponse
smart constructor.
listInvitationsResponse :: ListInvitationsResponse Source
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 :: Lens' ListInvitationsResponse (Maybe Text) Source
Token identifying the next page of results to return. If empty, no further results are available.
lirInvitations :: Lens' ListInvitationsResponse [Invitation] Source
Invitations that match the list request.
Invitation
data Invitation Source
An invitation to join a course.
See: invitation
smart constructor.
invitation :: Invitation Source
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:
iUserId :: Lens' Invitation (Maybe Text) Source
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
iRole :: Lens' Invitation (Maybe Text) Source
Role to invite the user to have. Must not be `COURSE_ROLE_UNSPECIFIED`.
Teacher
Teacher of a course.
See: teacher
smart constructor.
tProFile :: Lens' Teacher (Maybe UserProFile) Source
Global user information for the teacher. Read-only.
tUserId :: Lens' Teacher (Maybe Text) Source
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
Name
Details of the user's name.
See: name
smart constructor.
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:
nFullName :: Lens' Name (Maybe Text) Source
The user's full name formed by concatenating the first and last name values. Read-only.
ListCoursesResponse
data ListCoursesResponse Source
Response when listing courses.
See: listCoursesResponse
smart constructor.
listCoursesResponse :: ListCoursesResponse Source
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 :: Lens' ListCoursesResponse (Maybe Text) Source
Token identifying the next page of results to return. If empty, no further results are available.
lcrCourses :: Lens' ListCoursesResponse [Course] Source
Courses that match the list request.
UserProFile
data UserProFile Source
Global information for a user.
See: userProFile
smart constructor.
userProFile :: UserProFile Source
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 :: Lens' UserProFile (Maybe Text) Source
URL of user's profile photo. Read-only.
upfEmailAddress :: Lens' UserProFile (Maybe Text) Source
Email address of the user. Read-only.
upfPermissions :: Lens' UserProFile [GlobalPermission] Source
Global permissions of the user. Read-only.
Course
A Course in Classroom.
See: course
smart constructor.
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 :: Lens' Course (Maybe Text) Source
Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only.
cRoom :: Lens' Course (Maybe Text) Source
Optional room location. For example, "301". If set, this field must be a valid UTF-8 string and no longer than 650 characters.
cCourseState :: Lens' Course (Maybe Text) Source
State of the course. If unspecified, the default state is `PROVISIONED`.
cEnrollmentCode :: Lens' Course (Maybe Text) Source
Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only.
cUpdateTime :: Lens' Course (Maybe Text) Source
Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only.
cOwnerId :: Lens' Course (Maybe Text) Source
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 will result in an `INVALID_ARGUMENT` error.
cName :: Lens' Course (Maybe Text) Source
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.
cId :: Lens' Course (Maybe Text) Source
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 will result in an error.
cAlternateLink :: Lens' Course (Maybe Text) Source
Absolute link to this course in the Classroom web UI. Read-only.
cDescription :: Lens' Course (Maybe Text) Source
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.
cDescriptionHeading :: Lens' Course (Maybe Text) Source
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.
cSection :: Lens' Course (Maybe Text) Source
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.
ListStudentsResponse
data ListStudentsResponse Source
Response when listing students.
See: listStudentsResponse
smart constructor.
listStudentsResponse :: ListStudentsResponse Source
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 :: Lens' ListStudentsResponse (Maybe Text) Source
Token identifying the next page of results to return. If empty, no further results are available.
lsrStudents :: Lens' ListStudentsResponse [Student] Source
Students who match the list request.
CourseAlias
data CourseAlias Source
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.
courseAlias :: CourseAlias Source
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 :: Lens' CourseAlias (Maybe Text) Source
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.
ListTeachersResponse
data ListTeachersResponse Source
Response when listing teachers.
See: listTeachersResponse
smart constructor.
listTeachersResponse :: ListTeachersResponse Source
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 :: Lens' ListTeachersResponse (Maybe Text) Source
Token identifying the next page of results to return. If empty, no further results are available.
ltrTeachers :: Lens' ListTeachersResponse [Teacher] Source
Teachers who match the list request.
Student
Student in a course.
See: student
smart constructor.