| // Copyright 2024 Google LLC. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| // Code generated file. DO NOT EDIT. |
| |
| // Package classroom provides access to the Google Classroom API. |
| // |
| // For product documentation, see: https://developers.google.com/classroom/ |
| // |
| // # Library status |
| // |
| // These client libraries are officially supported by Google. However, this |
| // library is considered complete and is in maintenance mode. This means |
| // that we will address critical bugs and security issues but will not add |
| // any new features. |
| // |
| // When possible, we recommend using our newer |
| // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) |
| // that are still actively being worked and iterated on. |
| // |
| // # Creating a client |
| // |
| // Usage example: |
| // |
| // import "google.golang.org/api/classroom/v1" |
| // ... |
| // ctx := context.Background() |
| // classroomService, err := classroom.NewService(ctx) |
| // |
| // In this example, Google Application Default Credentials are used for |
| // authentication. For information on how to create and obtain Application |
| // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. |
| // |
| // # Other authentication options |
| // |
| // By default, all available scopes (see "Constants") are used to authenticate. |
| // To restrict scopes, use [google.golang.org/api/option.WithScopes]: |
| // |
| // classroomService, err := classroom.NewService(ctx, option.WithScopes(classroom.ClassroomTopicsReadonlyScope)) |
| // |
| // To use an API key for authentication (note: some APIs do not support API |
| // keys), use [google.golang.org/api/option.WithAPIKey]: |
| // |
| // classroomService, err := classroom.NewService(ctx, option.WithAPIKey("AIza...")) |
| // |
| // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth |
| // flow, use [google.golang.org/api/option.WithTokenSource]: |
| // |
| // config := &oauth2.Config{...} |
| // // ... |
| // token, err := config.Exchange(ctx, ...) |
| // classroomService, err := classroom.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) |
| // |
| // See [google.golang.org/api/option.ClientOption] for details on options. |
| package classroom // import "google.golang.org/api/classroom/v1" |
| |
| import ( |
| "bytes" |
| "context" |
| "encoding/json" |
| "errors" |
| "fmt" |
| "io" |
| "net/http" |
| "net/url" |
| "strconv" |
| "strings" |
| |
| googleapi "google.golang.org/api/googleapi" |
| internal "google.golang.org/api/internal" |
| gensupport "google.golang.org/api/internal/gensupport" |
| option "google.golang.org/api/option" |
| internaloption "google.golang.org/api/option/internaloption" |
| htransport "google.golang.org/api/transport/http" |
| ) |
| |
| // Always reference these packages, just in case the auto-generated code |
| // below doesn't. |
| var _ = bytes.NewBuffer |
| var _ = strconv.Itoa |
| var _ = fmt.Sprintf |
| var _ = json.NewDecoder |
| var _ = io.Copy |
| var _ = url.Parse |
| var _ = gensupport.MarshalJSON |
| var _ = googleapi.Version |
| var _ = errors.New |
| var _ = strings.Replace |
| var _ = context.Canceled |
| var _ = internaloption.WithDefaultEndpoint |
| var _ = internal.Version |
| |
| const apiId = "classroom:v1" |
| const apiName = "classroom" |
| const apiVersion = "v1" |
| const basePath = "https://classroom.googleapis.com/" |
| const basePathTemplate = "https://classroom.UNIVERSE_DOMAIN/" |
| const mtlsBasePath = "https://classroom.mtls.googleapis.com/" |
| |
| // OAuth2 scopes used by this API. |
| const ( |
| // View and manage announcements in Google Classroom |
| ClassroomAnnouncementsScope = "https://www.googleapis.com/auth/classroom.announcements" |
| |
| // View announcements in Google Classroom |
| ClassroomAnnouncementsReadonlyScope = "https://www.googleapis.com/auth/classroom.announcements.readonly" |
| |
| // See, edit, create, and permanently delete your Google Classroom classes |
| ClassroomCoursesScope = "https://www.googleapis.com/auth/classroom.courses" |
| |
| // View your Google Classroom classes |
| ClassroomCoursesReadonlyScope = "https://www.googleapis.com/auth/classroom.courses.readonly" |
| |
| // See, create and edit coursework items including assignments, questions, and |
| // grades |
| ClassroomCourseworkMeScope = "https://www.googleapis.com/auth/classroom.coursework.me" |
| |
| // View your course work and grades in Google Classroom |
| ClassroomCourseworkMeReadonlyScope = "https://www.googleapis.com/auth/classroom.coursework.me.readonly" |
| |
| // Manage course work and grades for students in the Google Classroom classes |
| // you teach and view the course work and grades for classes you administer |
| ClassroomCourseworkStudentsScope = "https://www.googleapis.com/auth/classroom.coursework.students" |
| |
| // View course work and grades for students in the Google Classroom classes you |
| // teach or administer |
| ClassroomCourseworkStudentsReadonlyScope = "https://www.googleapis.com/auth/classroom.coursework.students.readonly" |
| |
| // See, edit, and create classwork materials in Google Classroom |
| ClassroomCourseworkmaterialsScope = "https://www.googleapis.com/auth/classroom.courseworkmaterials" |
| |
| // See all classwork materials for your Google Classroom classes |
| ClassroomCourseworkmaterialsReadonlyScope = "https://www.googleapis.com/auth/classroom.courseworkmaterials.readonly" |
| |
| // View your Google Classroom guardians |
| ClassroomGuardianlinksMeReadonlyScope = "https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly" |
| |
| // View and manage guardians for students in your Google Classroom classes |
| ClassroomGuardianlinksStudentsScope = "https://www.googleapis.com/auth/classroom.guardianlinks.students" |
| |
| // View guardians for students in your Google Classroom classes |
| ClassroomGuardianlinksStudentsReadonlyScope = "https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly" |
| |
| // View the email addresses of people in your classes |
| ClassroomProfileEmailsScope = "https://www.googleapis.com/auth/classroom.profile.emails" |
| |
| // View the profile photos of people in your classes |
| ClassroomProfilePhotosScope = "https://www.googleapis.com/auth/classroom.profile.photos" |
| |
| // Receive notifications about your Google Classroom data |
| ClassroomPushNotificationsScope = "https://www.googleapis.com/auth/classroom.push-notifications" |
| |
| // Manage your Google Classroom class rosters |
| ClassroomRostersScope = "https://www.googleapis.com/auth/classroom.rosters" |
| |
| // View your Google Classroom class rosters |
| ClassroomRostersReadonlyScope = "https://www.googleapis.com/auth/classroom.rosters.readonly" |
| |
| // View your course work and grades in Google Classroom |
| ClassroomStudentSubmissionsMeReadonlyScope = "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly" |
| |
| // View course work and grades for students in the Google Classroom classes you |
| // teach or administer |
| ClassroomStudentSubmissionsStudentsReadonlyScope = "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" |
| |
| // See, create, and edit topics in Google Classroom |
| ClassroomTopicsScope = "https://www.googleapis.com/auth/classroom.topics" |
| |
| // View topics in Google Classroom |
| ClassroomTopicsReadonlyScope = "https://www.googleapis.com/auth/classroom.topics.readonly" |
| ) |
| |
| // NewService creates a new Service. |
| func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { |
| scopesOption := internaloption.WithDefaultScopes( |
| "https://www.googleapis.com/auth/classroom.announcements", |
| "https://www.googleapis.com/auth/classroom.announcements.readonly", |
| "https://www.googleapis.com/auth/classroom.courses", |
| "https://www.googleapis.com/auth/classroom.courses.readonly", |
| "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", |
| "https://www.googleapis.com/auth/classroom.courseworkmaterials", |
| "https://www.googleapis.com/auth/classroom.courseworkmaterials.readonly", |
| "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", |
| "https://www.googleapis.com/auth/classroom.profile.emails", |
| "https://www.googleapis.com/auth/classroom.profile.photos", |
| "https://www.googleapis.com/auth/classroom.push-notifications", |
| "https://www.googleapis.com/auth/classroom.rosters", |
| "https://www.googleapis.com/auth/classroom.rosters.readonly", |
| "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", |
| "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly", |
| "https://www.googleapis.com/auth/classroom.topics", |
| "https://www.googleapis.com/auth/classroom.topics.readonly", |
| ) |
| // NOTE: prepend, so we don't override user-specified scopes. |
| opts = append([]option.ClientOption{scopesOption}, opts...) |
| opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) |
| opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) |
| opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) |
| opts = append(opts, internaloption.EnableNewAuthLibrary()) |
| client, endpoint, err := htransport.NewClient(ctx, opts...) |
| if err != nil { |
| return nil, err |
| } |
| s, err := New(client) |
| if err != nil { |
| return nil, err |
| } |
| if endpoint != "" { |
| s.BasePath = endpoint |
| } |
| return s, nil |
| } |
| |
| // New creates a new Service. It uses the provided http.Client for requests. |
| // |
| // Deprecated: please use NewService instead. |
| // To provide a custom HTTP client, use option.WithHTTPClient. |
| // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. |
| func New(client *http.Client) (*Service, error) { |
| if client == nil { |
| return nil, errors.New("client is nil") |
| } |
| s := &Service{client: client, BasePath: basePath} |
| s.Courses = NewCoursesService(s) |
| s.Invitations = NewInvitationsService(s) |
| s.Registrations = NewRegistrationsService(s) |
| s.UserProfiles = NewUserProfilesService(s) |
| return s, nil |
| } |
| |
| type Service struct { |
| client *http.Client |
| BasePath string // API endpoint base URL |
| UserAgent string // optional additional User-Agent fragment |
| |
| Courses *CoursesService |
| |
| Invitations *InvitationsService |
| |
| Registrations *RegistrationsService |
| |
| UserProfiles *UserProfilesService |
| } |
| |
| func (s *Service) userAgent() string { |
| if s.UserAgent == "" { |
| return googleapi.UserAgent |
| } |
| return googleapi.UserAgent + " " + s.UserAgent |
| } |
| |
| func NewCoursesService(s *Service) *CoursesService { |
| rs := &CoursesService{s: s} |
| rs.Aliases = NewCoursesAliasesService(s) |
| rs.Announcements = NewCoursesAnnouncementsService(s) |
| rs.CourseWork = NewCoursesCourseWorkService(s) |
| rs.CourseWorkMaterials = NewCoursesCourseWorkMaterialsService(s) |
| rs.Students = NewCoursesStudentsService(s) |
| rs.Teachers = NewCoursesTeachersService(s) |
| rs.Topics = NewCoursesTopicsService(s) |
| return rs |
| } |
| |
| type CoursesService struct { |
| s *Service |
| |
| Aliases *CoursesAliasesService |
| |
| Announcements *CoursesAnnouncementsService |
| |
| CourseWork *CoursesCourseWorkService |
| |
| CourseWorkMaterials *CoursesCourseWorkMaterialsService |
| |
| Students *CoursesStudentsService |
| |
| Teachers *CoursesTeachersService |
| |
| Topics *CoursesTopicsService |
| } |
| |
| func NewCoursesAliasesService(s *Service) *CoursesAliasesService { |
| rs := &CoursesAliasesService{s: s} |
| return rs |
| } |
| |
| type CoursesAliasesService struct { |
| s *Service |
| } |
| |
| func NewCoursesAnnouncementsService(s *Service) *CoursesAnnouncementsService { |
| rs := &CoursesAnnouncementsService{s: s} |
| return rs |
| } |
| |
| type CoursesAnnouncementsService struct { |
| s *Service |
| } |
| |
| func NewCoursesCourseWorkService(s *Service) *CoursesCourseWorkService { |
| rs := &CoursesCourseWorkService{s: s} |
| rs.StudentSubmissions = NewCoursesCourseWorkStudentSubmissionsService(s) |
| return rs |
| } |
| |
| type CoursesCourseWorkService struct { |
| s *Service |
| |
| StudentSubmissions *CoursesCourseWorkStudentSubmissionsService |
| } |
| |
| func NewCoursesCourseWorkStudentSubmissionsService(s *Service) *CoursesCourseWorkStudentSubmissionsService { |
| rs := &CoursesCourseWorkStudentSubmissionsService{s: s} |
| return rs |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsService struct { |
| s *Service |
| } |
| |
| func NewCoursesCourseWorkMaterialsService(s *Service) *CoursesCourseWorkMaterialsService { |
| rs := &CoursesCourseWorkMaterialsService{s: s} |
| return rs |
| } |
| |
| type CoursesCourseWorkMaterialsService struct { |
| s *Service |
| } |
| |
| func NewCoursesStudentsService(s *Service) *CoursesStudentsService { |
| rs := &CoursesStudentsService{s: s} |
| return rs |
| } |
| |
| type CoursesStudentsService struct { |
| s *Service |
| } |
| |
| func NewCoursesTeachersService(s *Service) *CoursesTeachersService { |
| rs := &CoursesTeachersService{s: s} |
| return rs |
| } |
| |
| type CoursesTeachersService struct { |
| s *Service |
| } |
| |
| func NewCoursesTopicsService(s *Service) *CoursesTopicsService { |
| rs := &CoursesTopicsService{s: s} |
| return rs |
| } |
| |
| type CoursesTopicsService struct { |
| s *Service |
| } |
| |
| func NewInvitationsService(s *Service) *InvitationsService { |
| rs := &InvitationsService{s: s} |
| return rs |
| } |
| |
| type InvitationsService struct { |
| s *Service |
| } |
| |
| func NewRegistrationsService(s *Service) *RegistrationsService { |
| rs := &RegistrationsService{s: s} |
| return rs |
| } |
| |
| type RegistrationsService struct { |
| s *Service |
| } |
| |
| func NewUserProfilesService(s *Service) *UserProfilesService { |
| rs := &UserProfilesService{s: s} |
| rs.GuardianInvitations = NewUserProfilesGuardianInvitationsService(s) |
| rs.Guardians = NewUserProfilesGuardiansService(s) |
| return rs |
| } |
| |
| type UserProfilesService struct { |
| s *Service |
| |
| GuardianInvitations *UserProfilesGuardianInvitationsService |
| |
| Guardians *UserProfilesGuardiansService |
| } |
| |
| func NewUserProfilesGuardianInvitationsService(s *Service) *UserProfilesGuardianInvitationsService { |
| rs := &UserProfilesGuardianInvitationsService{s: s} |
| return rs |
| } |
| |
| type UserProfilesGuardianInvitationsService struct { |
| s *Service |
| } |
| |
| func NewUserProfilesGuardiansService(s *Service) *UserProfilesGuardiansService { |
| rs := &UserProfilesGuardiansService{s: s} |
| return rs |
| } |
| |
| type UserProfilesGuardiansService struct { |
| s *Service |
| } |
| |
| // Announcement: Announcement created by a teacher for students of the course |
| type Announcement struct { |
| // AlternateLink: Absolute link to this announcement in the Classroom web UI. |
| // This is only populated if `state` is `PUBLISHED`. Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // AssigneeMode: Assignee mode of the announcement. If unspecified, the default |
| // value is `ALL_STUDENTS`. |
| // |
| // Possible values: |
| // "ASSIGNEE_MODE_UNSPECIFIED" - No mode specified. This is never returned. |
| // "ALL_STUDENTS" - All students can see the item. This is the default state. |
| // "INDIVIDUAL_STUDENTS" - A subset of the students can see the item. |
| AssigneeMode string `json:"assigneeMode,omitempty"` |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // CreationTime: Timestamp when this announcement was created. Read-only. |
| CreationTime string `json:"creationTime,omitempty"` |
| // CreatorUserId: Identifier for the user that created the announcement. |
| // Read-only. |
| CreatorUserId string `json:"creatorUserId,omitempty"` |
| // Id: Classroom-assigned identifier of this announcement, unique per course. |
| // Read-only. |
| Id string `json:"id,omitempty"` |
| // IndividualStudentsOptions: 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 can see the announcement. |
| IndividualStudentsOptions *IndividualStudentsOptions `json:"individualStudentsOptions,omitempty"` |
| // Materials: Additional materials. Announcements must have no more than 20 |
| // material items. |
| Materials []*Material `json:"materials,omitempty"` |
| // ScheduledTime: Optional timestamp when this announcement is scheduled to be |
| // published. |
| ScheduledTime string `json:"scheduledTime,omitempty"` |
| // State: Status of this announcement. If unspecified, the default state is |
| // `DRAFT`. |
| // |
| // Possible values: |
| // "ANNOUNCEMENT_STATE_UNSPECIFIED" - No state specified. This is never |
| // returned. |
| // "PUBLISHED" - Status for announcement that has been published. This is the |
| // default state. |
| // "DRAFT" - Status for an announcement that is not yet published. |
| // Announcement in this state is visible only to course teachers and domain |
| // administrators. |
| // "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. |
| State string `json:"state,omitempty"` |
| // Text: Description of this announcement. The text must be a valid UTF-8 |
| // string containing no more than 30,000 characters. |
| Text string `json:"text,omitempty"` |
| // UpdateTime: Timestamp of the most recent change to this announcement. |
| // Read-only. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Announcement) MarshalJSON() ([]byte, error) { |
| type NoMethod Announcement |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Assignment: Additional details for assignments. |
| type Assignment struct { |
| // StudentWorkFolder: Drive folder where attachments from student submissions |
| // are placed. This is only populated for course teachers and administrators. |
| StudentWorkFolder *DriveFolder `json:"studentWorkFolder,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "StudentWorkFolder") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "StudentWorkFolder") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Assignment) MarshalJSON() ([]byte, error) { |
| type NoMethod Assignment |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // AssignmentSubmission: Student work for an assignment. |
| type AssignmentSubmission struct { |
| // Attachments: 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 |
| // (for example, title) may not be. |
| Attachments []*Attachment `json:"attachments,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Attachments") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Attachments") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *AssignmentSubmission) MarshalJSON() ([]byte, error) { |
| type NoMethod AssignmentSubmission |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Attachment: Attachment added to student assignment work. When creating |
| // attachments, setting the `form` field is not supported. |
| type Attachment struct { |
| // DriveFile: Google Drive file attachment. |
| DriveFile *DriveFile `json:"driveFile,omitempty"` |
| // Form: Google Forms attachment. |
| Form *Form `json:"form,omitempty"` |
| // Link: Link attachment. |
| Link *Link `json:"link,omitempty"` |
| // YouTubeVideo: Youtube video attachment. |
| YouTubeVideo *YouTubeVideo `json:"youTubeVideo,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DriveFile") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DriveFile") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Attachment) MarshalJSON() ([]byte, error) { |
| type NoMethod Attachment |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CloudPubsubTopic: 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. |
| type CloudPubsubTopic struct { |
| // TopicName: The `name` field of a Cloud Pub/Sub Topic |
| // (https://cloud.google.com/pubsub/docs/reference/rest/v1/projects.topics#Topic). |
| TopicName string `json:"topicName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "TopicName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "TopicName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CloudPubsubTopic) MarshalJSON() ([]byte, error) { |
| type NoMethod CloudPubsubTopic |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Course: A Course in Classroom. |
| type Course struct { |
| // AlternateLink: Absolute link to this course in the Classroom web UI. |
| // Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // CalendarId: 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. The Calendar for a course is created asynchronously when the course |
| // is set to `CourseState.ACTIVE` for the first time (at creation time or when |
| // it is updated to `ACTIVE` through the UI or the API). The Calendar ID will |
| // not be populated until the creation process is completed. Read-only. |
| CalendarId string `json:"calendarId,omitempty"` |
| // CourseGroupEmail: 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. |
| CourseGroupEmail string `json:"courseGroupEmail,omitempty"` |
| // CourseMaterialSets: Sets of materials that appear on the "about" page of |
| // this course. Read-only. |
| CourseMaterialSets []*CourseMaterialSet `json:"courseMaterialSets,omitempty"` |
| // CourseState: State of the course. If unspecified, the default state is |
| // `PROVISIONED`. |
| // |
| // Possible values: |
| // "COURSE_STATE_UNSPECIFIED" - No course state. No returned Course message |
| // will use this value. |
| // "ACTIVE" - The course is active. |
| // "ARCHIVED" - The course has been archived. You cannot modify it except to |
| // change it to a different state. |
| // "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" - 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" - 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. |
| CourseState string `json:"courseState,omitempty"` |
| // CreationTime: Creation time of the course. Specifying this field in a course |
| // update mask results in an error. Read-only. |
| CreationTime string `json:"creationTime,omitempty"` |
| // Description: 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. |
| Description string `json:"description,omitempty"` |
| // DescriptionHeading: 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. |
| DescriptionHeading string `json:"descriptionHeading,omitempty"` |
| // EnrollmentCode: Enrollment code to use when joining this course. Specifying |
| // this field in a course update mask results in an error. Read-only. |
| EnrollmentCode string `json:"enrollmentCode,omitempty"` |
| // GradebookSettings: The gradebook settings that specify how a student's |
| // overall grade for the course will be calculated and who it will be displayed |
| // to. Read-only |
| GradebookSettings *GradebookSettings `json:"gradebookSettings,omitempty"` |
| // GuardiansEnabled: Whether or not guardian notifications are enabled for this |
| // course. Read-only. |
| GuardiansEnabled bool `json:"guardiansEnabled,omitempty"` |
| // Id: 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. |
| Id string `json:"id,omitempty"` |
| // Name: 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. |
| Name string `json:"name,omitempty"` |
| // OwnerId: 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. |
| OwnerId string `json:"ownerId,omitempty"` |
| // Room: Optional room location. For example, "301". If set, this field must be |
| // a valid UTF-8 string and no longer than 650 characters. |
| Room string `json:"room,omitempty"` |
| // Section: 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. |
| Section string `json:"section,omitempty"` |
| // TeacherFolder: 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. |
| TeacherFolder *DriveFolder `json:"teacherFolder,omitempty"` |
| // TeacherGroupEmail: 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. |
| TeacherGroupEmail string `json:"teacherGroupEmail,omitempty"` |
| // UpdateTime: Time of the most recent update to this course. Specifying this |
| // field in a course update mask results in an error. Read-only. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Course) MarshalJSON() ([]byte, error) { |
| type NoMethod Course |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CourseAlias: 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. |
| type CourseAlias struct { |
| // Alias: 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. |
| Alias string `json:"alias,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Alias") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Alias") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseAlias) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseAlias |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CourseMaterial: A material attached to a course as part of a material set. |
| type CourseMaterial struct { |
| // DriveFile: Google Drive file attachment. |
| DriveFile *DriveFile `json:"driveFile,omitempty"` |
| // Form: Google Forms attachment. |
| Form *Form `json:"form,omitempty"` |
| // Link: Link atatchment. |
| Link *Link `json:"link,omitempty"` |
| // YouTubeVideo: Youtube video attachment. |
| YouTubeVideo *YouTubeVideo `json:"youTubeVideo,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DriveFile") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DriveFile") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseMaterial) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseMaterial |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CourseMaterialSet: 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. |
| type CourseMaterialSet struct { |
| // Materials: Materials attached to this set. |
| Materials []*CourseMaterial `json:"materials,omitempty"` |
| // Title: Title for this set. |
| Title string `json:"title,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Materials") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Materials") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseMaterialSet) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseMaterialSet |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CourseRosterChangesInfo: Information about a `Feed` with a `feed_type` of |
| // `COURSE_ROSTER_CHANGES`. |
| type CourseRosterChangesInfo struct { |
| // CourseId: The `course_id` of the course to subscribe to roster changes for. |
| CourseId string `json:"courseId,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CourseId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseRosterChangesInfo) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseRosterChangesInfo |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CourseWork: Course work created by a teacher for students of the course. |
| type CourseWork struct { |
| // AlternateLink: Absolute link to this course work in the Classroom web UI. |
| // This is only populated if `state` is `PUBLISHED`. Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // AssigneeMode: Assignee mode of the coursework. If unspecified, the default |
| // value is `ALL_STUDENTS`. |
| // |
| // Possible values: |
| // "ASSIGNEE_MODE_UNSPECIFIED" - No mode specified. This is never returned. |
| // "ALL_STUDENTS" - All students can see the item. This is the default state. |
| // "INDIVIDUAL_STUDENTS" - A subset of the students can see the item. |
| AssigneeMode string `json:"assigneeMode,omitempty"` |
| // Assignment: Assignment details. This is populated only when `work_type` is |
| // `ASSIGNMENT`. Read-only. |
| Assignment *Assignment `json:"assignment,omitempty"` |
| // AssociatedWithDeveloper: Whether this course work item is associated with |
| // the Developer Console project making the request. See CreateCourseWork for |
| // more details. Read-only. |
| AssociatedWithDeveloper bool `json:"associatedWithDeveloper,omitempty"` |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // CreationTime: Timestamp when this course work was created. Read-only. |
| CreationTime string `json:"creationTime,omitempty"` |
| // CreatorUserId: Identifier for the user that created the coursework. |
| // Read-only. |
| CreatorUserId string `json:"creatorUserId,omitempty"` |
| // Description: Optional description of this course work. If set, the |
| // description must be a valid UTF-8 string containing no more than 30,000 |
| // characters. |
| Description string `json:"description,omitempty"` |
| // DueDate: Optional date, in UTC, that submissions for this course work are |
| // due. This must be specified if `due_time` is specified. |
| DueDate *Date `json:"dueDate,omitempty"` |
| // DueTime: Optional time of day, in UTC, that submissions for this course work |
| // are due. This must be specified if `due_date` is specified. |
| DueTime *TimeOfDay `json:"dueTime,omitempty"` |
| // GradeCategory: The category that this coursework's grade contributes to. |
| // Present only when a category has been chosen for the coursework. May be used |
| // in calculating the overall grade. Read-only. |
| GradeCategory *GradeCategory `json:"gradeCategory,omitempty"` |
| // Id: Classroom-assigned identifier of this course work, unique per course. |
| // Read-only. |
| Id string `json:"id,omitempty"` |
| // IndividualStudentsOptions: 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 are assigned the coursework. |
| IndividualStudentsOptions *IndividualStudentsOptions `json:"individualStudentsOptions,omitempty"` |
| // Materials: Additional materials. CourseWork must have no more than 20 |
| // material items. |
| Materials []*Material `json:"materials,omitempty"` |
| // MaxPoints: Maximum grade for this course work. If zero or unspecified, this |
| // assignment is considered ungraded. This must be a non-negative integer |
| // value. |
| MaxPoints float64 `json:"maxPoints,omitempty"` |
| // MultipleChoiceQuestion: 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. |
| MultipleChoiceQuestion *MultipleChoiceQuestion `json:"multipleChoiceQuestion,omitempty"` |
| // ScheduledTime: Optional timestamp when this course work is scheduled to be |
| // published. |
| ScheduledTime string `json:"scheduledTime,omitempty"` |
| // State: Status of this course work. If unspecified, the default state is |
| // `DRAFT`. |
| // |
| // Possible values: |
| // "COURSE_WORK_STATE_UNSPECIFIED" - No state specified. This is never |
| // returned. |
| // "PUBLISHED" - Status for work that has been published. This is the default |
| // state. |
| // "DRAFT" - Status for work that is not yet published. Work in this state is |
| // visible only to course teachers and domain administrators. |
| // "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. |
| State string `json:"state,omitempty"` |
| // SubmissionModificationMode: Setting to determine when students are allowed |
| // to modify submissions. If unspecified, the default value is |
| // `MODIFIABLE_UNTIL_TURNED_IN`. |
| // |
| // Possible values: |
| // "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED" - No modification mode |
| // specified. This is never returned. |
| // "MODIFIABLE_UNTIL_TURNED_IN" - Submissions can be modified before being |
| // turned in. |
| // "MODIFIABLE" - Submissions can be modified at any time. |
| SubmissionModificationMode string `json:"submissionModificationMode,omitempty"` |
| // Title: Title of this course work. The title must be a valid UTF-8 string |
| // containing between 1 and 3000 characters. |
| Title string `json:"title,omitempty"` |
| // TopicId: Identifier for the topic that this coursework is associated with. |
| // Must match an existing topic in the course. |
| TopicId string `json:"topicId,omitempty"` |
| // UpdateTime: Timestamp of the most recent change to this course work. |
| // Read-only. |
| UpdateTime string `json:"updateTime,omitempty"` |
| // WorkType: Type of this course work. The type is set when the course work is |
| // created and cannot be changed. |
| // |
| // Possible values: |
| // "COURSE_WORK_TYPE_UNSPECIFIED" - No work type specified. This is never |
| // returned. |
| // "ASSIGNMENT" - An assignment. |
| // "SHORT_ANSWER_QUESTION" - A short answer question. |
| // "MULTIPLE_CHOICE_QUESTION" - A multiple-choice question. |
| WorkType string `json:"workType,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseWork) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseWork |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| func (s *CourseWork) UnmarshalJSON(data []byte) error { |
| type NoMethod CourseWork |
| var s1 struct { |
| MaxPoints gensupport.JSONFloat64 `json:"maxPoints"` |
| *NoMethod |
| } |
| s1.NoMethod = (*NoMethod)(s) |
| if err := json.Unmarshal(data, &s1); err != nil { |
| return err |
| } |
| s.MaxPoints = float64(s1.MaxPoints) |
| return nil |
| } |
| |
| // CourseWorkChangesInfo: Information about a `Feed` with a `feed_type` of |
| // `COURSE_WORK_CHANGES`. |
| type CourseWorkChangesInfo struct { |
| // CourseId: The `course_id` of the course to subscribe to work changes for. |
| CourseId string `json:"courseId,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CourseId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseWorkChangesInfo) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseWorkChangesInfo |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CourseWorkMaterial: Course work material created by a teacher for students |
| // of the course |
| type CourseWorkMaterial struct { |
| // AlternateLink: Absolute link to this course work material in the Classroom |
| // web UI. This is only populated if `state` is `PUBLISHED`. Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // AssigneeMode: Assignee mode of the course work material. If unspecified, the |
| // default value is `ALL_STUDENTS`. |
| // |
| // Possible values: |
| // "ASSIGNEE_MODE_UNSPECIFIED" - No mode specified. This is never returned. |
| // "ALL_STUDENTS" - All students can see the item. This is the default state. |
| // "INDIVIDUAL_STUDENTS" - A subset of the students can see the item. |
| AssigneeMode string `json:"assigneeMode,omitempty"` |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // CreationTime: Timestamp when this course work material was created. |
| // Read-only. |
| CreationTime string `json:"creationTime,omitempty"` |
| // CreatorUserId: Identifier for the user that created the course work |
| // material. Read-only. |
| CreatorUserId string `json:"creatorUserId,omitempty"` |
| // Description: Optional description of this course work material. The text |
| // must be a valid UTF-8 string containing no more than 30,000 characters. |
| Description string `json:"description,omitempty"` |
| // Id: Classroom-assigned identifier of this course work material, unique per |
| // course. Read-only. |
| Id string `json:"id,omitempty"` |
| // IndividualStudentsOptions: Identifiers of students with access to the course |
| // work material. This field is set only if `assigneeMode` is |
| // `INDIVIDUAL_STUDENTS`. If the `assigneeMode` is `INDIVIDUAL_STUDENTS`, then |
| // only students specified in this field can see the course work material. |
| IndividualStudentsOptions *IndividualStudentsOptions `json:"individualStudentsOptions,omitempty"` |
| // Materials: Additional materials. A course work material must have no more |
| // than 20 material items. |
| Materials []*Material `json:"materials,omitempty"` |
| // ScheduledTime: Optional timestamp when this course work material is |
| // scheduled to be published. |
| ScheduledTime string `json:"scheduledTime,omitempty"` |
| // State: Status of this course work material. If unspecified, the default |
| // state is `DRAFT`. |
| // |
| // Possible values: |
| // "COURSEWORK_MATERIAL_STATE_UNSPECIFIED" - No state specified. This is |
| // never returned. |
| // "PUBLISHED" - Status for course work material that has been published. |
| // This is the default state. |
| // "DRAFT" - Status for a course work material that is not yet published. |
| // Course work material in this state is visible only to course teachers and |
| // domain administrators. |
| // "DELETED" - Status for course work material that was published but is now |
| // deleted. Course work material in this state is visible only to course |
| // teachers and domain administrators. Course work material in this state is |
| // deleted after some time. |
| State string `json:"state,omitempty"` |
| // Title: Title of this course work material. The title must be a valid UTF-8 |
| // string containing between 1 and 3000 characters. |
| Title string `json:"title,omitempty"` |
| // TopicId: Identifier for the topic that this course work material is |
| // associated with. Must match an existing topic in the course. |
| TopicId string `json:"topicId,omitempty"` |
| // UpdateTime: Timestamp of the most recent change to this course work |
| // material. Read-only. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CourseWorkMaterial) MarshalJSON() ([]byte, error) { |
| type NoMethod CourseWorkMaterial |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Date: Represents a whole or partial calendar date, such as a birthday. The |
| // time of day and time zone are either specified elsewhere or are |
| // insignificant. The date is relative to the Gregorian Calendar. This can |
| // represent one of the following: * A full date, with non-zero year, month, |
| // and day values. * A month and day, with a zero year (for example, an |
| // anniversary). * A year on its own, with a zero month and a zero day. * A |
| // year and month, with a zero day (for example, a credit card expiration |
| // date). Related types: * google.type.TimeOfDay * google.type.DateTime * |
| // google.protobuf.Timestamp |
| type Date struct { |
| // Day: Day of a month. Must be from 1 to 31 and valid for the year and month, |
| // or 0 to specify a year by itself or a year and month where the day isn't |
| // significant. |
| Day int64 `json:"day,omitempty"` |
| // Month: Month of a year. Must be from 1 to 12, or 0 to specify a year without |
| // a month and day. |
| Month int64 `json:"month,omitempty"` |
| // Year: Year of the date. Must be from 1 to 9999, or 0 to specify a date |
| // without a year. |
| Year int64 `json:"year,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Day") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Day") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Date) MarshalJSON() ([]byte, error) { |
| type NoMethod Date |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DriveFile: Representation of a Google Drive file. |
| type DriveFile struct { |
| // AlternateLink: URL that can be used to access the Drive item. Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // Id: Drive API resource ID. |
| Id string `json:"id,omitempty"` |
| // ThumbnailUrl: URL of a thumbnail image of the Drive item. Read-only. |
| ThumbnailUrl string `json:"thumbnailUrl,omitempty"` |
| // Title: Title of the Drive item. Read-only. |
| Title string `json:"title,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *DriveFile) MarshalJSON() ([]byte, error) { |
| type NoMethod DriveFile |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DriveFolder: Representation of a Google Drive folder. |
| type DriveFolder struct { |
| // AlternateLink: URL that can be used to access the Drive folder. Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // Id: Drive API resource ID. |
| Id string `json:"id,omitempty"` |
| // Title: Title of the Drive folder. Read-only. |
| Title string `json:"title,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *DriveFolder) MarshalJSON() ([]byte, error) { |
| type NoMethod DriveFolder |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // 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); } |
| type Empty struct { |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| } |
| |
| // Feed: A class of notifications that an application can register to receive. |
| // For example: "all roster changes for a domain". |
| type Feed struct { |
| // CourseRosterChangesInfo: Information about a `Feed` with a `feed_type` of |
| // `COURSE_ROSTER_CHANGES`. This field must be specified if `feed_type` is |
| // `COURSE_ROSTER_CHANGES`. |
| CourseRosterChangesInfo *CourseRosterChangesInfo `json:"courseRosterChangesInfo,omitempty"` |
| // CourseWorkChangesInfo: Information about a `Feed` with a `feed_type` of |
| // `COURSE_WORK_CHANGES`. This field must be specified if `feed_type` is |
| // `COURSE_WORK_CHANGES`. |
| CourseWorkChangesInfo *CourseWorkChangesInfo `json:"courseWorkChangesInfo,omitempty"` |
| // FeedType: The type of feed. |
| // |
| // Possible values: |
| // "FEED_TYPE_UNSPECIFIED" - Should never be returned or provided. |
| // "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. |
| // "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. |
| // "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). |
| FeedType string `json:"feedType,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CourseRosterChangesInfo") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseRosterChangesInfo") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Feed) MarshalJSON() ([]byte, error) { |
| type NoMethod Feed |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Form: Google Forms item. |
| type Form struct { |
| // FormUrl: URL of the form. |
| FormUrl string `json:"formUrl,omitempty"` |
| // ResponseUrl: URL of the form responses document. Only set if responses have |
| // been recorded and only when the requesting user is an editor of the form. |
| // Read-only. |
| ResponseUrl string `json:"responseUrl,omitempty"` |
| // ThumbnailUrl: URL of a thumbnail image of the Form. Read-only. |
| ThumbnailUrl string `json:"thumbnailUrl,omitempty"` |
| // Title: Title of the Form. Read-only. |
| Title string `json:"title,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "FormUrl") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "FormUrl") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Form) MarshalJSON() ([]byte, error) { |
| type NoMethod Form |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GlobalPermission: Global user permission description. |
| type GlobalPermission struct { |
| // Permission: Permission value. |
| // |
| // Possible values: |
| // "PERMISSION_UNSPECIFIED" - No permission is specified. This is not |
| // returned and is not a valid value. |
| // "CREATE_COURSE" - User is permitted to create a course. |
| Permission string `json:"permission,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Permission") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Permission") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GlobalPermission) MarshalJSON() ([]byte, error) { |
| type NoMethod GlobalPermission |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GradeCategory: Details for a grade category in a course. Coursework may have |
| // zero or one grade category, and the category may be used in computing the |
| // overall grade. See the help center article |
| // (https://support.google.com/edu/classroom/answer/9184995) for details. |
| type GradeCategory struct { |
| // DefaultGradeDenominator: Default value of denominator. Only applicable when |
| // grade calculation type is TOTAL_POINTS. |
| DefaultGradeDenominator int64 `json:"defaultGradeDenominator,omitempty"` |
| // Id: ID of the grade category. |
| Id string `json:"id,omitempty"` |
| // Name: Name of the grade category. |
| Name string `json:"name,omitempty"` |
| // Weight: The weight of the category average as part of overall average. A |
| // weight of 12.34% is represented as 123400 (100% is 1,000,000). The last two |
| // digits should always be zero since we use two decimal precision. Only |
| // applicable when grade calculation type is WEIGHTED_CATEGORIES. |
| Weight int64 `json:"weight,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DefaultGradeDenominator") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DefaultGradeDenominator") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GradeCategory) MarshalJSON() ([]byte, error) { |
| type NoMethod GradeCategory |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GradeHistory: The history of each grade on this submission. |
| type GradeHistory struct { |
| // ActorUserId: The teacher who made the grade change. |
| ActorUserId string `json:"actorUserId,omitempty"` |
| // GradeChangeType: The type of grade change at this time in the submission |
| // grade history. |
| // |
| // Possible values: |
| // "UNKNOWN_GRADE_CHANGE_TYPE" - No grade change type specified. This should |
| // never be returned. |
| // "DRAFT_GRADE_POINTS_EARNED_CHANGE" - A change in the numerator of the |
| // draft grade. |
| // "ASSIGNED_GRADE_POINTS_EARNED_CHANGE" - A change in the numerator of the |
| // assigned grade. |
| // "MAX_POINTS_CHANGE" - A change in the denominator of the grade. |
| GradeChangeType string `json:"gradeChangeType,omitempty"` |
| // GradeTimestamp: When the grade of the submission was changed. |
| GradeTimestamp string `json:"gradeTimestamp,omitempty"` |
| // MaxPoints: The denominator of the grade at this time in the submission grade |
| // history. |
| MaxPoints float64 `json:"maxPoints,omitempty"` |
| // PointsEarned: The numerator of the grade at this time in the submission |
| // grade history. |
| PointsEarned float64 `json:"pointsEarned,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ActorUserId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ActorUserId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GradeHistory) MarshalJSON() ([]byte, error) { |
| type NoMethod GradeHistory |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| func (s *GradeHistory) UnmarshalJSON(data []byte) error { |
| type NoMethod GradeHistory |
| var s1 struct { |
| MaxPoints gensupport.JSONFloat64 `json:"maxPoints"` |
| PointsEarned gensupport.JSONFloat64 `json:"pointsEarned"` |
| *NoMethod |
| } |
| s1.NoMethod = (*NoMethod)(s) |
| if err := json.Unmarshal(data, &s1); err != nil { |
| return err |
| } |
| s.MaxPoints = float64(s1.MaxPoints) |
| s.PointsEarned = float64(s1.PointsEarned) |
| return nil |
| } |
| |
| // GradebookSettings: The gradebook settings for a course. See the help center |
| // article (https://support.google.com/edu/classroom/answer/9184995) for |
| // details. |
| type GradebookSettings struct { |
| // CalculationType: Indicates how the overall grade is calculated. |
| // |
| // Possible values: |
| // "CALCULATION_TYPE_UNSPECIFIED" - No method specified. This is never |
| // returned. |
| // "TOTAL_POINTS" - Overall grade is the sum of grades divided by the sum of |
| // total points regardless of category. |
| // "WEIGHTED_CATEGORIES" - Overall grade is the weighted average by category. |
| CalculationType string `json:"calculationType,omitempty"` |
| // DisplaySetting: Indicates who can see the overall grade.. |
| // |
| // Possible values: |
| // "DISPLAY_SETTING_UNSPECIFIED" - No setting specified. This is never |
| // returned. |
| // "SHOW_OVERALL_GRADE" - Shows overall grade in the gradebook and student |
| // profile to both teachers and students. |
| // "HIDE_OVERALL_GRADE" - Does not show overall grade in the gradebook or |
| // student profile. |
| // "SHOW_TEACHERS_ONLY" - Shows the overall grade to teachers in the |
| // gradebook and student profile. Hides from students in their student profile. |
| DisplaySetting string `json:"displaySetting,omitempty"` |
| // GradeCategories: Grade categories that are available for coursework in the |
| // course. |
| GradeCategories []*GradeCategory `json:"gradeCategories,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "CalculationType") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CalculationType") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GradebookSettings) MarshalJSON() ([]byte, error) { |
| type NoMethod GradebookSettings |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Guardian: Association between a student and a guardian of that student. The |
| // guardian may receive information about the student's course work. |
| type Guardian struct { |
| // GuardianId: Identifier for the guardian. |
| GuardianId string `json:"guardianId,omitempty"` |
| // GuardianProfile: User profile for the guardian. |
| GuardianProfile *UserProfile `json:"guardianProfile,omitempty"` |
| // InvitedEmailAddress: The email address to which the initial guardian |
| // invitation was sent. This field is only visible to domain administrators. |
| InvitedEmailAddress string `json:"invitedEmailAddress,omitempty"` |
| // StudentId: Identifier for the student to whom the guardian relationship |
| // applies. |
| StudentId string `json:"studentId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "GuardianId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "GuardianId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Guardian) MarshalJSON() ([]byte, error) { |
| type NoMethod Guardian |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GuardianInvitation: An invitation to become the guardian of a specified |
| // user, sent to a specified email address. |
| type GuardianInvitation struct { |
| // CreationTime: The time that this invitation was created. Read-only. |
| CreationTime string `json:"creationTime,omitempty"` |
| // InvitationId: Unique identifier for this invitation. Read-only. |
| InvitationId string `json:"invitationId,omitempty"` |
| // InvitedEmailAddress: Email address that the invitation was sent to. This |
| // field is only visible to domain administrators. |
| InvitedEmailAddress string `json:"invitedEmailAddress,omitempty"` |
| // State: The state that this invitation is in. |
| // |
| // Possible values: |
| // "GUARDIAN_INVITATION_STATE_UNSPECIFIED" - Should never be returned. |
| // "PENDING" - The invitation is active and awaiting a response. |
| // "COMPLETE" - The invitation is no longer active. It may have been |
| // accepted, declined, withdrawn or it may have expired. |
| State string `json:"state,omitempty"` |
| // StudentId: ID of the student (in standard format) |
| StudentId string `json:"studentId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CreationTime") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CreationTime") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GuardianInvitation) MarshalJSON() ([]byte, error) { |
| type NoMethod GuardianInvitation |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // IndividualStudentsOptions: Assignee details about a coursework/announcement. |
| // This field is set if and only if `assigneeMode` is `INDIVIDUAL_STUDENTS`. |
| type IndividualStudentsOptions struct { |
| // StudentIds: Identifiers for the students that have access to the |
| // coursework/announcement. |
| StudentIds []string `json:"studentIds,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "StudentIds") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "StudentIds") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *IndividualStudentsOptions) MarshalJSON() ([]byte, error) { |
| type NoMethod IndividualStudentsOptions |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Invitation: An invitation to join a course. |
| type Invitation struct { |
| // CourseId: Identifier of the course to invite the user to. |
| CourseId string `json:"courseId,omitempty"` |
| // Id: Identifier assigned by Classroom. Read-only. |
| Id string `json:"id,omitempty"` |
| // Role: Role to invite the user to have. Must not be |
| // `COURSE_ROLE_UNSPECIFIED`. |
| // |
| // Possible values: |
| // "COURSE_ROLE_UNSPECIFIED" - No course role. |
| // "STUDENT" - Student in the course. |
| // "TEACHER" - Teacher of the course. |
| // "OWNER" - Owner of the course. |
| Role string `json:"role,omitempty"` |
| // UserId: 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 |
| UserId string `json:"userId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CourseId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Invitation) MarshalJSON() ([]byte, error) { |
| type NoMethod Invitation |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Link: URL item. |
| type Link struct { |
| // ThumbnailUrl: URL of a thumbnail image of the target URL. Read-only. |
| ThumbnailUrl string `json:"thumbnailUrl,omitempty"` |
| // Title: Title of the target of the URL. Read-only. |
| Title string `json:"title,omitempty"` |
| // Url: URL to link to. This must be a valid UTF-8 string containing between 1 |
| // and 2024 characters. |
| Url string `json:"url,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ThumbnailUrl") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ThumbnailUrl") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Link) MarshalJSON() ([]byte, error) { |
| type NoMethod Link |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListAnnouncementsResponse: Response when listing course work. |
| type ListAnnouncementsResponse struct { |
| // Announcements: Announcement items that match the request. |
| Announcements []*Announcement `json:"announcements,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Announcements") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Announcements") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListAnnouncementsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListAnnouncementsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListCourseAliasesResponse: Response when listing course aliases. |
| type ListCourseAliasesResponse struct { |
| // Aliases: The course aliases. |
| Aliases []*CourseAlias `json:"aliases,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Aliases") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Aliases") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListCourseAliasesResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListCourseAliasesResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListCourseWorkMaterialResponse: Response when listing course work material. |
| type ListCourseWorkMaterialResponse struct { |
| // CourseWorkMaterial: Course work material items that match the request. |
| CourseWorkMaterial []*CourseWorkMaterial `json:"courseWorkMaterial,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CourseWorkMaterial") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseWorkMaterial") to include |
| // in API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListCourseWorkMaterialResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListCourseWorkMaterialResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListCourseWorkResponse: Response when listing course work. |
| type ListCourseWorkResponse struct { |
| // CourseWork: Course work items that match the request. |
| CourseWork []*CourseWork `json:"courseWork,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CourseWork") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseWork") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListCourseWorkResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListCourseWorkResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListCoursesResponse: Response when listing courses. |
| type ListCoursesResponse struct { |
| // Courses: Courses that match the list request. |
| Courses []*Course `json:"courses,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Courses") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Courses") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListCoursesResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListCoursesResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListGuardianInvitationsResponse: Response when listing guardian invitations. |
| type ListGuardianInvitationsResponse struct { |
| // GuardianInvitations: Guardian invitations that matched the list request. |
| GuardianInvitations []*GuardianInvitation `json:"guardianInvitations,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "GuardianInvitations") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "GuardianInvitations") to include |
| // in API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListGuardianInvitationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListGuardianInvitationsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListGuardiansResponse: Response when listing guardians. |
| type ListGuardiansResponse struct { |
| // Guardians: Guardians on this page of results that met the criteria specified |
| // in the request. |
| Guardians []*Guardian `json:"guardians,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Guardians") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Guardians") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListGuardiansResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListGuardiansResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListInvitationsResponse: Response when listing invitations. |
| type ListInvitationsResponse struct { |
| // Invitations: Invitations that match the list request. |
| Invitations []*Invitation `json:"invitations,omitempty"` |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Invitations") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Invitations") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListInvitationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListInvitationsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListStudentSubmissionsResponse: Response when listing student submissions. |
| type ListStudentSubmissionsResponse struct { |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // StudentSubmissions: Student work that matches the request. |
| StudentSubmissions []*StudentSubmission `json:"studentSubmissions,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListStudentSubmissionsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListStudentSubmissionsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListStudentsResponse: Response when listing students. |
| type ListStudentsResponse struct { |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Students: Students who match the list request. |
| Students []*Student `json:"students,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListStudentsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListStudentsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListTeachersResponse: Response when listing teachers. |
| type ListTeachersResponse struct { |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Teachers: Teachers who match the list request. |
| Teachers []*Teacher `json:"teachers,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListTeachersResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListTeachersResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListTopicResponse: Response when listing topics. |
| type ListTopicResponse struct { |
| // NextPageToken: Token identifying the next page of results to return. If |
| // empty, no further results are available. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Topic: Topic items that match the request. |
| Topic []*Topic `json:"topic,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListTopicResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListTopicResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Material: Material attached to course work. When creating attachments, |
| // setting the `form` field is not supported. |
| type Material struct { |
| // DriveFile: Google Drive file material. |
| DriveFile *SharedDriveFile `json:"driveFile,omitempty"` |
| // Form: Google Forms material. |
| Form *Form `json:"form,omitempty"` |
| // Link: Link material. On creation, this is upgraded to a more appropriate |
| // type if possible, and this is reflected in the response. |
| Link *Link `json:"link,omitempty"` |
| // YoutubeVideo: YouTube video material. |
| YoutubeVideo *YouTubeVideo `json:"youtubeVideo,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DriveFile") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DriveFile") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Material) MarshalJSON() ([]byte, error) { |
| type NoMethod Material |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ModifyAnnouncementAssigneesRequest: Request to modify assignee mode and |
| // options of an announcement. |
| type ModifyAnnouncementAssigneesRequest struct { |
| // AssigneeMode: Mode of the announcement describing whether it is accessible |
| // by all students or specified individual students. |
| // |
| // Possible values: |
| // "ASSIGNEE_MODE_UNSPECIFIED" - No mode specified. This is never returned. |
| // "ALL_STUDENTS" - All students can see the item. This is the default state. |
| // "INDIVIDUAL_STUDENTS" - A subset of the students can see the item. |
| AssigneeMode string `json:"assigneeMode,omitempty"` |
| // ModifyIndividualStudentsOptions: Set which students can view or cannot view |
| // the announcement. Must be specified only when `assigneeMode` is |
| // `INDIVIDUAL_STUDENTS`. |
| ModifyIndividualStudentsOptions *ModifyIndividualStudentsOptions `json:"modifyIndividualStudentsOptions,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AssigneeMode") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AssigneeMode") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ModifyAnnouncementAssigneesRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod ModifyAnnouncementAssigneesRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ModifyAttachmentsRequest: Request to modify the attachments of a student |
| // submission. |
| type ModifyAttachmentsRequest struct { |
| // AddAttachments: Attachments to add. A student submission may not have more |
| // than 20 attachments. Form attachments are not supported. |
| AddAttachments []*Attachment `json:"addAttachments,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AddAttachments") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AddAttachments") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ModifyAttachmentsRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod ModifyAttachmentsRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ModifyCourseWorkAssigneesRequest: Request to modify assignee mode and |
| // options of a coursework. |
| type ModifyCourseWorkAssigneesRequest struct { |
| // AssigneeMode: Mode of the coursework describing whether it will be assigned |
| // to all students or specified individual students. |
| // |
| // Possible values: |
| // "ASSIGNEE_MODE_UNSPECIFIED" - No mode specified. This is never returned. |
| // "ALL_STUDENTS" - All students can see the item. This is the default state. |
| // "INDIVIDUAL_STUDENTS" - A subset of the students can see the item. |
| AssigneeMode string `json:"assigneeMode,omitempty"` |
| // ModifyIndividualStudentsOptions: Set which students are assigned or not |
| // assigned to the coursework. Must be specified only when `assigneeMode` is |
| // `INDIVIDUAL_STUDENTS`. |
| ModifyIndividualStudentsOptions *ModifyIndividualStudentsOptions `json:"modifyIndividualStudentsOptions,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AssigneeMode") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AssigneeMode") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ModifyCourseWorkAssigneesRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod ModifyCourseWorkAssigneesRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ModifyIndividualStudentsOptions: Contains fields to add or remove students |
| // from a course work or announcement where the `assigneeMode` is set to |
| // `INDIVIDUAL_STUDENTS`. |
| type ModifyIndividualStudentsOptions struct { |
| // AddStudentIds: IDs of students to be added as having access to this |
| // coursework/announcement. |
| AddStudentIds []string `json:"addStudentIds,omitempty"` |
| // RemoveStudentIds: IDs of students to be removed from having access to this |
| // coursework/announcement. |
| RemoveStudentIds []string `json:"removeStudentIds,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AddStudentIds") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AddStudentIds") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ModifyIndividualStudentsOptions) MarshalJSON() ([]byte, error) { |
| type NoMethod ModifyIndividualStudentsOptions |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MultipleChoiceQuestion: Additional details for multiple-choice questions. |
| type MultipleChoiceQuestion struct { |
| // Choices: Possible choices. |
| Choices []string `json:"choices,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Choices") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Choices") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *MultipleChoiceQuestion) MarshalJSON() ([]byte, error) { |
| type NoMethod MultipleChoiceQuestion |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // MultipleChoiceSubmission: Student work for a multiple-choice question. |
| type MultipleChoiceSubmission struct { |
| // Answer: Student's select choice. |
| Answer string `json:"answer,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Answer") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Answer") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *MultipleChoiceSubmission) MarshalJSON() ([]byte, error) { |
| type NoMethod MultipleChoiceSubmission |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Name: Details of the user's name. |
| type Name struct { |
| // FamilyName: The user's last name. Read-only. |
| FamilyName string `json:"familyName,omitempty"` |
| // FullName: The user's full name formed by concatenating the first and last |
| // name values. Read-only. |
| FullName string `json:"fullName,omitempty"` |
| // GivenName: The user's first name. Read-only. |
| GivenName string `json:"givenName,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "FamilyName") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "FamilyName") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Name) MarshalJSON() ([]byte, error) { |
| type NoMethod Name |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ReclaimStudentSubmissionRequest: Request to reclaim a student submission. |
| type ReclaimStudentSubmissionRequest struct { |
| } |
| |
| // Registration: An instruction to Classroom to send notifications from the |
| // `feed` to the provided destination. |
| type Registration struct { |
| // CloudPubsubTopic: The Cloud Pub/Sub topic that notifications are to be sent |
| // to. |
| CloudPubsubTopic *CloudPubsubTopic `json:"cloudPubsubTopic,omitempty"` |
| // ExpiryTime: The time until which the `Registration` is effective. This is a |
| // read-only field assigned by the server. |
| ExpiryTime string `json:"expiryTime,omitempty"` |
| // Feed: Specification for the class of notifications that Classroom should |
| // deliver to the destination. |
| Feed *Feed `json:"feed,omitempty"` |
| // RegistrationId: A server-generated unique identifier for this |
| // `Registration`. Read-only. |
| RegistrationId string `json:"registrationId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CloudPubsubTopic") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CloudPubsubTopic") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Registration) MarshalJSON() ([]byte, error) { |
| type NoMethod Registration |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ReturnStudentSubmissionRequest: Request to return a student submission. |
| type ReturnStudentSubmissionRequest struct { |
| } |
| |
| // SharedDriveFile: Drive file that is used as material for course work. |
| type SharedDriveFile struct { |
| // DriveFile: Drive file details. |
| DriveFile *DriveFile `json:"driveFile,omitempty"` |
| // ShareMode: Mechanism by which students access the Drive item. |
| // |
| // Possible values: |
| // "UNKNOWN_SHARE_MODE" - No sharing mode specified. This should never be |
| // returned. |
| // "VIEW" - Students can view the shared file. |
| // "EDIT" - Students can edit the shared file. |
| // "STUDENT_COPY" - Students have a personal copy of the shared file. |
| ShareMode string `json:"shareMode,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DriveFile") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DriveFile") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *SharedDriveFile) MarshalJSON() ([]byte, error) { |
| type NoMethod SharedDriveFile |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ShortAnswerSubmission: Student work for a short answer question. |
| type ShortAnswerSubmission struct { |
| // Answer: Student response to a short-answer question. |
| Answer string `json:"answer,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Answer") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Answer") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ShortAnswerSubmission) MarshalJSON() ([]byte, error) { |
| type NoMethod ShortAnswerSubmission |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // StateHistory: The history of each state this submission has been in. |
| type StateHistory struct { |
| // ActorUserId: The teacher or student who made the change. |
| ActorUserId string `json:"actorUserId,omitempty"` |
| // State: The workflow pipeline stage. |
| // |
| // Possible values: |
| // "STATE_UNSPECIFIED" - No state specified. This should never be returned. |
| // "CREATED" - The Submission has been created. |
| // "TURNED_IN" - The student has turned in an assigned document, which may or |
| // may not be a template. |
| // "RETURNED" - The teacher has returned the assigned document to the |
| // student. |
| // "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. |
| // "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. |
| State string `json:"state,omitempty"` |
| // StateTimestamp: When the submission entered this state. |
| StateTimestamp string `json:"stateTimestamp,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ActorUserId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ActorUserId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *StateHistory) MarshalJSON() ([]byte, error) { |
| type NoMethod StateHistory |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Student: Student in a course. |
| type Student struct { |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // Profile: Global user information for the student. Read-only. |
| Profile *UserProfile `json:"profile,omitempty"` |
| // StudentWorkFolder: Information about a Drive Folder for this student's work |
| // in this course. Only visible to the student and domain administrators. |
| // Read-only. |
| StudentWorkFolder *DriveFolder `json:"studentWorkFolder,omitempty"` |
| // UserId: 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 |
| UserId string `json:"userId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CourseId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Student) MarshalJSON() ([]byte, error) { |
| type NoMethod Student |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // StudentSubmission: Student submission for course work. `StudentSubmission` |
| // items are generated when a `CourseWork` item is created. Student submissions |
| // that have never been accessed (i.e. with `state` = NEW) may not have a |
| // creation time or update time. |
| type StudentSubmission struct { |
| // AlternateLink: Absolute link to the submission in the Classroom web UI. |
| // Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // AssignedGrade: Optional grade. If unset, no grade was set. This value must |
| // be non-negative. Decimal (that is, non-integer) values are allowed, but are |
| // rounded to two decimal places. This may be modified only by course teachers. |
| AssignedGrade float64 `json:"assignedGrade,omitempty"` |
| // AssignmentSubmission: Submission content when course_work_type is |
| // ASSIGNMENT. Students can modify this content using ModifyAttachments. |
| AssignmentSubmission *AssignmentSubmission `json:"assignmentSubmission,omitempty"` |
| // AssociatedWithDeveloper: Whether this student submission is associated with |
| // the Developer Console project making the request. See CreateCourseWork for |
| // more details. Read-only. |
| AssociatedWithDeveloper bool `json:"associatedWithDeveloper,omitempty"` |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // CourseWorkId: Identifier for the course work this corresponds to. Read-only. |
| CourseWorkId string `json:"courseWorkId,omitempty"` |
| // CourseWorkType: Type of course work this submission is for. Read-only. |
| // |
| // Possible values: |
| // "COURSE_WORK_TYPE_UNSPECIFIED" - No work type specified. This is never |
| // returned. |
| // "ASSIGNMENT" - An assignment. |
| // "SHORT_ANSWER_QUESTION" - A short answer question. |
| // "MULTIPLE_CHOICE_QUESTION" - A multiple-choice question. |
| CourseWorkType string `json:"courseWorkType,omitempty"` |
| // CreationTime: Creation time of this submission. This may be unset if the |
| // student has not accessed this item. Read-only. |
| CreationTime string `json:"creationTime,omitempty"` |
| // DraftGrade: Optional pending grade. If unset, no grade was set. This value |
| // must be non-negative. Decimal (that is, non-integer) values are allowed, but |
| // are rounded to two decimal places. This is only visible to and modifiable by |
| // course teachers. |
| DraftGrade float64 `json:"draftGrade,omitempty"` |
| // Id: Classroom-assigned Identifier for the student submission. This is unique |
| // among submissions for the relevant course work. Read-only. |
| Id string `json:"id,omitempty"` |
| // Late: Whether this submission is late. Read-only. |
| Late bool `json:"late,omitempty"` |
| // MultipleChoiceSubmission: Submission content when course_work_type is |
| // MULTIPLE_CHOICE_QUESTION. |
| MultipleChoiceSubmission *MultipleChoiceSubmission `json:"multipleChoiceSubmission,omitempty"` |
| // ShortAnswerSubmission: Submission content when course_work_type is |
| // SHORT_ANSWER_QUESTION. |
| ShortAnswerSubmission *ShortAnswerSubmission `json:"shortAnswerSubmission,omitempty"` |
| // State: State of this submission. Read-only. |
| // |
| // Possible values: |
| // "SUBMISSION_STATE_UNSPECIFIED" - No state specified. This should never be |
| // returned. |
| // "NEW" - The student has never accessed this submission. Attachments are |
| // not returned and timestamps is not set. |
| // "CREATED" - Has been created. |
| // "TURNED_IN" - Has been turned in to the teacher. |
| // "RETURNED" - Has been returned to the student. |
| // "RECLAIMED_BY_STUDENT" - Student chose to "unsubmit" the assignment. |
| State string `json:"state,omitempty"` |
| // SubmissionHistory: The history of the submission (includes state and grade |
| // histories). Read-only. |
| SubmissionHistory []*SubmissionHistory `json:"submissionHistory,omitempty"` |
| // UpdateTime: Last update time of this submission. This may be unset if the |
| // student has not accessed this item. Read-only. |
| UpdateTime string `json:"updateTime,omitempty"` |
| // UserId: Identifier for the student that owns this submission. Read-only. |
| UserId string `json:"userId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *StudentSubmission) MarshalJSON() ([]byte, error) { |
| type NoMethod StudentSubmission |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| func (s *StudentSubmission) UnmarshalJSON(data []byte) error { |
| type NoMethod StudentSubmission |
| var s1 struct { |
| AssignedGrade gensupport.JSONFloat64 `json:"assignedGrade"` |
| DraftGrade gensupport.JSONFloat64 `json:"draftGrade"` |
| *NoMethod |
| } |
| s1.NoMethod = (*NoMethod)(s) |
| if err := json.Unmarshal(data, &s1); err != nil { |
| return err |
| } |
| s.AssignedGrade = float64(s1.AssignedGrade) |
| s.DraftGrade = float64(s1.DraftGrade) |
| return nil |
| } |
| |
| // SubmissionHistory: The history of the submission. This currently includes |
| // state and grade histories. |
| type SubmissionHistory struct { |
| // GradeHistory: The grade history information of the submission, if present. |
| GradeHistory *GradeHistory `json:"gradeHistory,omitempty"` |
| // StateHistory: The state history information of the submission, if present. |
| StateHistory *StateHistory `json:"stateHistory,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "GradeHistory") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "GradeHistory") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *SubmissionHistory) MarshalJSON() ([]byte, error) { |
| type NoMethod SubmissionHistory |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Teacher: Teacher of a course. |
| type Teacher struct { |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // Profile: Global user information for the teacher. Read-only. |
| Profile *UserProfile `json:"profile,omitempty"` |
| // UserId: 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 |
| UserId string `json:"userId,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CourseId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Teacher) MarshalJSON() ([]byte, error) { |
| type NoMethod Teacher |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // TimeOfDay: 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`. |
| type TimeOfDay struct { |
| // Hours: 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. |
| Hours int64 `json:"hours,omitempty"` |
| // Minutes: Minutes of hour of day. Must be from 0 to 59. |
| Minutes int64 `json:"minutes,omitempty"` |
| // Nanos: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. |
| Nanos int64 `json:"nanos,omitempty"` |
| // Seconds: 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. |
| Seconds int64 `json:"seconds,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Hours") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Hours") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *TimeOfDay) MarshalJSON() ([]byte, error) { |
| type NoMethod TimeOfDay |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Topic: Topic created by a teacher for the course |
| type Topic struct { |
| // CourseId: Identifier of the course. Read-only. |
| CourseId string `json:"courseId,omitempty"` |
| // Name: The name of the topic, generated by the user. Leading and trailing |
| // whitespaces, if any, are trimmed. Also, multiple consecutive whitespaces are |
| // collapsed into one inside the name. The result must be a non-empty string. |
| // Topic names are case sensitive, and must be no longer than 100 characters. |
| Name string `json:"name,omitempty"` |
| // TopicId: Unique identifier for the topic. Read-only. |
| TopicId string `json:"topicId,omitempty"` |
| // UpdateTime: The time the topic was last updated by the system. Read-only. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "CourseId") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "CourseId") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Topic) MarshalJSON() ([]byte, error) { |
| type NoMethod Topic |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // TurnInStudentSubmissionRequest: Request to turn in a student submission. |
| type TurnInStudentSubmissionRequest struct { |
| } |
| |
| // UserProfile: Global information for a user. |
| type UserProfile struct { |
| // EmailAddress: Email address of the user. Must request |
| // `https://www.googleapis.com/auth/classroom.profile.emails` scope for this |
| // field to be populated in a response body. Read-only. |
| EmailAddress string `json:"emailAddress,omitempty"` |
| // Id: Identifier of the user. Read-only. |
| Id string `json:"id,omitempty"` |
| // Name: Name of the user. Read-only. |
| Name *Name `json:"name,omitempty"` |
| // Permissions: Global permissions of the user. Read-only. |
| Permissions []*GlobalPermission `json:"permissions,omitempty"` |
| // PhotoUrl: URL of user's profile photo. Must request |
| // `https://www.googleapis.com/auth/classroom.profile.photos` scope for this |
| // field to be populated in a response body. Read-only. |
| PhotoUrl string `json:"photoUrl,omitempty"` |
| // VerifiedTeacher: Represents whether a Google Workspace for Education user's |
| // domain administrator has explicitly verified them as being a teacher. This |
| // field is always false if the user is not a member of a Google Workspace for |
| // Education domain. Read-only |
| VerifiedTeacher bool `json:"verifiedTeacher,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "EmailAddress") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "EmailAddress") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *UserProfile) MarshalJSON() ([]byte, error) { |
| type NoMethod UserProfile |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // YouTubeVideo: YouTube video item. |
| type YouTubeVideo struct { |
| // AlternateLink: URL that can be used to view the YouTube video. Read-only. |
| AlternateLink string `json:"alternateLink,omitempty"` |
| // Id: YouTube API resource ID. |
| Id string `json:"id,omitempty"` |
| // ThumbnailUrl: URL of a thumbnail image of the YouTube video. Read-only. |
| ThumbnailUrl string `json:"thumbnailUrl,omitempty"` |
| // Title: Title of the YouTube video. Read-only. |
| Title string `json:"title,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AlternateLink") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AlternateLink") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *YouTubeVideo) MarshalJSON() ([]byte, error) { |
| type NoMethod YouTubeVideo |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| type CoursesCreateCall struct { |
| s *Service |
| course *Course |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a course. The user specified in `ownerId` is the owner of |
| // the created course and added as a teacher. A non-admin requesting user can |
| // only create a course with themselves as the owner. Domain admins can create |
| // courses owned by any user within their domain. This method returns the |
| // following error codes: * `PERMISSION_DENIED` if the requesting user is not |
| // permitted to create courses or for access errors. * `NOT_FOUND` if the |
| // primary teacher is not a valid user. * `FAILED_PRECONDITION` if the course |
| // owner's account is disabled or for the following request errors: * |
| // UserCannotOwnCourse * UserGroupsMembershipLimitReached * `ALREADY_EXISTS` if |
| // an alias was specified in the `id` and already exists. |
| func (r *CoursesService) Create(course *Course) *CoursesCreateCall { |
| c := &CoursesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.course = course |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCreateCall) Fields(s ...googleapi.Field) *CoursesCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCreateCall) Context(ctx context.Context) *CoursesCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.course) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Course.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCreateCall) Do(opts ...googleapi.CallOption) (*Course, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Course{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesDeleteCall struct { |
| s *Service |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a course. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not permitted to delete the |
| // requested course or for access errors. * `NOT_FOUND` if no course exists |
| // with the requested ID. |
| // |
| // - id: Identifier of the course to delete. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesService) Delete(id string) *CoursesDeleteCall { |
| c := &CoursesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesDeleteCall) Fields(s ...googleapi.Field) *CoursesDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesDeleteCall) Context(ctx context.Context) *CoursesDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesGetCall struct { |
| s *Service |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a course. 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. * `NOT_FOUND` if no course exists |
| // with the requested ID. |
| // |
| // - id: Identifier of the course to return. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesService) Get(id string) *CoursesGetCall { |
| c := &CoursesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesGetCall) Fields(s ...googleapi.Field) *CoursesGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesGetCall) IfNoneMatch(entityTag string) *CoursesGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesGetCall) Context(ctx context.Context) *CoursesGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Course.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesGetCall) Do(opts ...googleapi.CallOption) (*Course, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Course{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesListCall struct { |
| s *Service |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of courses that the requesting user is permitted to |
| // view, 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. |
| func (r *CoursesService) List() *CoursesListCall { |
| c := &CoursesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| return c |
| } |
| |
| // CourseStates sets the optional parameter "courseStates": Restricts returned |
| // courses to those in one of the specified states The default value is ACTIVE, |
| // ARCHIVED, PROVISIONED, DECLINED. |
| // |
| // Possible values: |
| // |
| // "COURSE_STATE_UNSPECIFIED" - No course state. No returned Course message |
| // |
| // will use this value. |
| // |
| // "ACTIVE" - The course is active. |
| // "ARCHIVED" - The course has been archived. You cannot modify it except to |
| // |
| // change it to a different state. |
| // |
| // "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" - 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" - 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. |
| func (c *CoursesListCall) CourseStates(courseStates ...string) *CoursesListCall { |
| c.urlParams_.SetMulti("courseStates", append([]string{}, courseStates...)) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesListCall) PageSize(pageSize int64) *CoursesListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesListCall) PageToken(pageToken string) *CoursesListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // StudentId sets the optional parameter "studentId": Restricts returned |
| // courses to those having a student with the specified identifier. 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 |
| func (c *CoursesListCall) StudentId(studentId string) *CoursesListCall { |
| c.urlParams_.Set("studentId", studentId) |
| return c |
| } |
| |
| // TeacherId sets the optional parameter "teacherId": Restricts returned |
| // courses to those having a teacher with the specified identifier. 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 |
| func (c *CoursesListCall) TeacherId(teacherId string) *CoursesListCall { |
| c.urlParams_.Set("teacherId", teacherId) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesListCall) Fields(s ...googleapi.Field) *CoursesListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesListCall) IfNoneMatch(entityTag string) *CoursesListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesListCall) Context(ctx context.Context) *CoursesListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListCoursesResponse.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesListCall) Do(opts ...googleapi.CallOption) (*ListCoursesResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListCoursesResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesListCall) Pages(ctx context.Context, f func(*ListCoursesResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesPatchCall struct { |
| s *Service |
| id string |
| course *Course |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates one or more fields in a course. This method returns the |
| // following error codes: * `PERMISSION_DENIED` if the requesting user is not |
| // permitted to modify the requested course or for access errors. * `NOT_FOUND` |
| // if no course exists with the requested ID. * `INVALID_ARGUMENT` if invalid |
| // fields are specified in the update mask or if no update mask is supplied. * |
| // `FAILED_PRECONDITION` for the following request errors: * |
| // CourseNotModifiable * InactiveCourseOwner * IneligibleOwner |
| // |
| // - id: Identifier of the course to update. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesService) Patch(id string, course *Course) *CoursesPatchCall { |
| c := &CoursesPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| c.course = course |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": 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` * `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=,,...` |
| func (c *CoursesPatchCall) UpdateMask(updateMask string) *CoursesPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesPatchCall) Fields(s ...googleapi.Field) *CoursesPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesPatchCall) Context(ctx context.Context) *CoursesPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.course) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Course.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesPatchCall) Do(opts ...googleapi.CallOption) (*Course, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Course{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesUpdateCall struct { |
| s *Service |
| id string |
| course *Course |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Update: Updates a course. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not permitted to modify the |
| // requested course or for access errors. * `NOT_FOUND` if no course exists |
| // with the requested ID. * `FAILED_PRECONDITION` for the following request |
| // errors: * CourseNotModifiable |
| // |
| // - id: Identifier of the course to update. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesService) Update(id string, course *Course) *CoursesUpdateCall { |
| c := &CoursesUpdateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| c.course = course |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesUpdateCall) Fields(s ...googleapi.Field) *CoursesUpdateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesUpdateCall) Context(ctx context.Context) *CoursesUpdateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesUpdateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesUpdateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.course) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PUT", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.update" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Course.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesUpdateCall) Do(opts ...googleapi.CallOption) (*Course, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Course{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAliasesCreateCall struct { |
| s *Service |
| courseId string |
| coursealias *CourseAlias |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: 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. * |
| // `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). |
| // |
| // - courseId: Identifier of the course to alias. This identifier can be either |
| // the Classroom-assigned identifier or an alias. |
| func (r *CoursesAliasesService) Create(courseId string, coursealias *CourseAlias) *CoursesAliasesCreateCall { |
| c := &CoursesAliasesCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.coursealias = coursealias |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAliasesCreateCall) Fields(s ...googleapi.Field) *CoursesAliasesCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAliasesCreateCall) Context(ctx context.Context) *CoursesAliasesCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAliasesCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAliasesCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.coursealias) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/aliases") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.aliases.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseAlias.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAliasesCreateCall) Do(opts ...googleapi.CallOption) (*CourseAlias, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseAlias{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAliasesDeleteCall struct { |
| s *Service |
| courseId string |
| aliasid string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: 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. * `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). |
| // |
| // - alias: Alias to delete. This may not be the Classroom-assigned identifier. |
| // - courseId: Identifier of the course whose alias should be deleted. This |
| // identifier can be either the Classroom-assigned identifier or an alias. |
| func (r *CoursesAliasesService) Delete(courseId string, aliasid string) *CoursesAliasesDeleteCall { |
| c := &CoursesAliasesDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.aliasid = aliasid |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAliasesDeleteCall) Fields(s ...googleapi.Field) *CoursesAliasesDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAliasesDeleteCall) Context(ctx context.Context) *CoursesAliasesDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAliasesDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAliasesDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/aliases/{alias}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "alias": c.aliasid, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.aliases.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAliasesDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAliasesListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of aliases for a course. This method returns the |
| // following error codes: * `PERMISSION_DENIED` if the requesting user is not |
| // permitted to access the course or for access errors. * `NOT_FOUND` if the |
| // course does not exist. |
| // |
| // - courseId: The identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesAliasesService) List(courseId string) *CoursesAliasesListCall { |
| c := &CoursesAliasesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesAliasesListCall) PageSize(pageSize int64) *CoursesAliasesListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesAliasesListCall) PageToken(pageToken string) *CoursesAliasesListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAliasesListCall) Fields(s ...googleapi.Field) *CoursesAliasesListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesAliasesListCall) IfNoneMatch(entityTag string) *CoursesAliasesListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAliasesListCall) Context(ctx context.Context) *CoursesAliasesListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAliasesListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAliasesListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/aliases") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.aliases.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListCourseAliasesResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *CoursesAliasesListCall) Do(opts ...googleapi.CallOption) (*ListCourseAliasesResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListCourseAliasesResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesAliasesListCall) Pages(ctx context.Context, f func(*ListCourseAliasesResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesAnnouncementsCreateCall struct { |
| s *Service |
| courseId string |
| announcement *Announcement |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: 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 |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesAnnouncementsService) Create(courseId string, announcement *Announcement) *CoursesAnnouncementsCreateCall { |
| c := &CoursesAnnouncementsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.announcement = announcement |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAnnouncementsCreateCall) Fields(s ...googleapi.Field) *CoursesAnnouncementsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAnnouncementsCreateCall) Context(ctx context.Context) *CoursesAnnouncementsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAnnouncementsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAnnouncementsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.announcement) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/announcements") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.announcements.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Announcement.ServerResponse.Header or (if a response was returned at all) |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAnnouncementsCreateCall) Do(opts ...googleapi.CallOption) (*Announcement, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Announcement{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAnnouncementsDeleteCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the announcement to delete. This identifier is a |
| // Classroom-assigned identifier. |
| func (r *CoursesAnnouncementsService) Delete(courseId string, id string) *CoursesAnnouncementsDeleteCall { |
| c := &CoursesAnnouncementsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAnnouncementsDeleteCall) Fields(s ...googleapi.Field) *CoursesAnnouncementsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAnnouncementsDeleteCall) Context(ctx context.Context) *CoursesAnnouncementsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAnnouncementsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAnnouncementsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/announcements/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.announcements.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAnnouncementsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAnnouncementsGetCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the announcement. |
| func (r *CoursesAnnouncementsService) Get(courseId string, id string) *CoursesAnnouncementsGetCall { |
| c := &CoursesAnnouncementsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAnnouncementsGetCall) Fields(s ...googleapi.Field) *CoursesAnnouncementsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesAnnouncementsGetCall) IfNoneMatch(entityTag string) *CoursesAnnouncementsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAnnouncementsGetCall) Context(ctx context.Context) *CoursesAnnouncementsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAnnouncementsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAnnouncementsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/announcements/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.announcements.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Announcement.ServerResponse.Header or (if a response was returned at all) |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAnnouncementsGetCall) Do(opts ...googleapi.CallOption) (*Announcement, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Announcement{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAnnouncementsListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesAnnouncementsService) List(courseId string) *CoursesAnnouncementsListCall { |
| c := &CoursesAnnouncementsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // AnnouncementStates sets the optional parameter "announcementStates": |
| // Restriction on the `state` of announcements returned. If this argument is |
| // left unspecified, the default value is `PUBLISHED`. |
| // |
| // Possible values: |
| // |
| // "ANNOUNCEMENT_STATE_UNSPECIFIED" - No state specified. This is never |
| // |
| // returned. |
| // |
| // "PUBLISHED" - Status for announcement that has been published. This is the |
| // |
| // default state. |
| // |
| // "DRAFT" - Status for an announcement that is not yet published. |
| // |
| // Announcement in this state is visible only to course teachers and domain |
| // administrators. |
| // |
| // "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. |
| func (c *CoursesAnnouncementsListCall) AnnouncementStates(announcementStates ...string) *CoursesAnnouncementsListCall { |
| c.urlParams_.SetMulti("announcementStates", append([]string{}, announcementStates...)) |
| return c |
| } |
| |
| // OrderBy sets the optional parameter "orderBy": 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` |
| func (c *CoursesAnnouncementsListCall) OrderBy(orderBy string) *CoursesAnnouncementsListCall { |
| c.urlParams_.Set("orderBy", orderBy) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesAnnouncementsListCall) PageSize(pageSize int64) *CoursesAnnouncementsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesAnnouncementsListCall) PageToken(pageToken string) *CoursesAnnouncementsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAnnouncementsListCall) Fields(s ...googleapi.Field) *CoursesAnnouncementsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesAnnouncementsListCall) IfNoneMatch(entityTag string) *CoursesAnnouncementsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAnnouncementsListCall) Context(ctx context.Context) *CoursesAnnouncementsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAnnouncementsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAnnouncementsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/announcements") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.announcements.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListAnnouncementsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *CoursesAnnouncementsListCall) Do(opts ...googleapi.CallOption) (*ListAnnouncementsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListAnnouncementsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesAnnouncementsListCall) Pages(ctx context.Context, f func(*ListAnnouncementsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesAnnouncementsModifyAssigneesCall struct { |
| s *Service |
| courseId string |
| id string |
| modifyannouncementassigneesrequest *ModifyAnnouncementAssigneesRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // ModifyAssignees: 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the announcement. |
| func (r *CoursesAnnouncementsService) ModifyAssignees(courseId string, id string, modifyannouncementassigneesrequest *ModifyAnnouncementAssigneesRequest) *CoursesAnnouncementsModifyAssigneesCall { |
| c := &CoursesAnnouncementsModifyAssigneesCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| c.modifyannouncementassigneesrequest = modifyannouncementassigneesrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAnnouncementsModifyAssigneesCall) Fields(s ...googleapi.Field) *CoursesAnnouncementsModifyAssigneesCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAnnouncementsModifyAssigneesCall) Context(ctx context.Context) *CoursesAnnouncementsModifyAssigneesCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAnnouncementsModifyAssigneesCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAnnouncementsModifyAssigneesCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.modifyannouncementassigneesrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/announcements/{id}:modifyAssignees") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.announcements.modifyAssignees" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Announcement.ServerResponse.Header or (if a response was returned at all) |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAnnouncementsModifyAssigneesCall) Do(opts ...googleapi.CallOption) (*Announcement, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Announcement{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesAnnouncementsPatchCall struct { |
| s *Service |
| courseId string |
| id string |
| announcement *Announcement |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: 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 |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the announcement. |
| func (r *CoursesAnnouncementsService) Patch(courseId string, id string, announcement *Announcement) *CoursesAnnouncementsPatchCall { |
| c := &CoursesAnnouncementsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| c.announcement = announcement |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": 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 is returned. The following fields may be |
| // specified by teachers: * `text` * `state` * `scheduled_time` |
| func (c *CoursesAnnouncementsPatchCall) UpdateMask(updateMask string) *CoursesAnnouncementsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesAnnouncementsPatchCall) Fields(s ...googleapi.Field) *CoursesAnnouncementsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesAnnouncementsPatchCall) Context(ctx context.Context) *CoursesAnnouncementsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesAnnouncementsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesAnnouncementsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.announcement) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/announcements/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.announcements.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Announcement.ServerResponse.Header or (if a response was returned at all) |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesAnnouncementsPatchCall) Do(opts ...googleapi.CallOption) (*Announcement, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Announcement{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkCreateCall struct { |
| s *Service |
| courseId string |
| coursework *CourseWork |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates course work. The resulting course work (and corresponding |
| // student submissions) are associated with the Developer Console project of |
| // the OAuth client ID (https://support.google.com/cloud/answer/6158849) used |
| // to make the request. Classroom API requests to modify course work and |
| // student submissions must be made with an OAuth client ID from the associated |
| // Developer Console project. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not permitted to access the |
| // requested course, create course work 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 |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesCourseWorkService) Create(courseId string, coursework *CourseWork) *CoursesCourseWorkCreateCall { |
| c := &CoursesCourseWorkCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.coursework = coursework |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkCreateCall) Fields(s ...googleapi.Field) *CoursesCourseWorkCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkCreateCall) Context(ctx context.Context) *CoursesCourseWorkCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.coursework) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWork.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkCreateCall) Do(opts ...googleapi.CallOption) (*CourseWork, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWork{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkDeleteCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a course work. 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 course work item. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting developer project did not |
| // create the corresponding course work, if the requesting user is not |
| // permitted to delete the requested course or for access errors. * |
| // `FAILED_PRECONDITION` if the requested course work has already been deleted. |
| // * `NOT_FOUND` if no course exists with the requested ID. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the course work to delete. This identifier is a |
| // Classroom-assigned identifier. |
| func (r *CoursesCourseWorkService) Delete(courseId string, id string) *CoursesCourseWorkDeleteCall { |
| c := &CoursesCourseWorkDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkDeleteCall) Fields(s ...googleapi.Field) *CoursesCourseWorkDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkDeleteCall) Context(ctx context.Context) *CoursesCourseWorkDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkGetCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns course work. 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the course work. |
| func (r *CoursesCourseWorkService) Get(courseId string, id string) *CoursesCourseWorkGetCall { |
| c := &CoursesCourseWorkGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkGetCall) Fields(s ...googleapi.Field) *CoursesCourseWorkGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesCourseWorkGetCall) IfNoneMatch(entityTag string) *CoursesCourseWorkGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkGetCall) Context(ctx context.Context) *CoursesCourseWorkGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWork.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkGetCall) Do(opts ...googleapi.CallOption) (*CourseWork, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWork{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of course work that the requester is permitted to view. |
| // Course students may only view `PUBLISHED` course work. Course teachers and |
| // domain administrators may view all course work. 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesCourseWorkService) List(courseId string) *CoursesCourseWorkListCall { |
| c := &CoursesCourseWorkListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // CourseWorkStates sets the optional parameter "courseWorkStates": Restriction |
| // on the work status to return. Only courseWork that matches is returned. If |
| // unspecified, items with a work status of `PUBLISHED` is returned. |
| // |
| // Possible values: |
| // |
| // "COURSE_WORK_STATE_UNSPECIFIED" - No state specified. This is never |
| // |
| // returned. |
| // |
| // "PUBLISHED" - Status for work that has been published. This is the default |
| // |
| // state. |
| // |
| // "DRAFT" - Status for work that is not yet published. Work in this state is |
| // |
| // visible only to course teachers and domain administrators. |
| // |
| // "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. |
| func (c *CoursesCourseWorkListCall) CourseWorkStates(courseWorkStates ...string) *CoursesCourseWorkListCall { |
| c.urlParams_.SetMulti("courseWorkStates", append([]string{}, courseWorkStates...)) |
| return c |
| } |
| |
| // OrderBy sets the optional parameter "orderBy": Optional sort ordering for |
| // results. A comma-separated list of fields with an optional sort direction |
| // keyword. Supported fields are `updateTime` and `dueDate`. Supported |
| // direction keywords are `asc` and `desc`. If not specified, `updateTime desc` |
| // is the default behavior. Examples: `dueDate asc,updateTime desc`, |
| // `updateTime,dueDate desc` |
| func (c *CoursesCourseWorkListCall) OrderBy(orderBy string) *CoursesCourseWorkListCall { |
| c.urlParams_.Set("orderBy", orderBy) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesCourseWorkListCall) PageSize(pageSize int64) *CoursesCourseWorkListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesCourseWorkListCall) PageToken(pageToken string) *CoursesCourseWorkListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkListCall) Fields(s ...googleapi.Field) *CoursesCourseWorkListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesCourseWorkListCall) IfNoneMatch(entityTag string) *CoursesCourseWorkListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkListCall) Context(ctx context.Context) *CoursesCourseWorkListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListCourseWorkResponse.ServerResponse.Header or (if a response was returned |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkListCall) Do(opts ...googleapi.CallOption) (*ListCourseWorkResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListCourseWorkResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesCourseWorkListCall) Pages(ctx context.Context, f func(*ListCourseWorkResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesCourseWorkModifyAssigneesCall struct { |
| s *Service |
| courseId string |
| id string |
| modifycourseworkassigneesrequest *ModifyCourseWorkAssigneesRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // ModifyAssignees: 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the coursework. |
| func (r *CoursesCourseWorkService) ModifyAssignees(courseId string, id string, modifycourseworkassigneesrequest *ModifyCourseWorkAssigneesRequest) *CoursesCourseWorkModifyAssigneesCall { |
| c := &CoursesCourseWorkModifyAssigneesCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| c.modifycourseworkassigneesrequest = modifycourseworkassigneesrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkModifyAssigneesCall) Fields(s ...googleapi.Field) *CoursesCourseWorkModifyAssigneesCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkModifyAssigneesCall) Context(ctx context.Context) *CoursesCourseWorkModifyAssigneesCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkModifyAssigneesCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkModifyAssigneesCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.modifycourseworkassigneesrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{id}:modifyAssignees") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.modifyAssignees" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWork.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkModifyAssigneesCall) Do(opts ...googleapi.CallOption) (*CourseWork, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWork{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkPatchCall struct { |
| s *Service |
| courseId string |
| id string |
| coursework *CourseWork |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates one or more fields of a course work. See |
| // google.classroom.v1.CourseWork for details of which fields may be updated |
| // and who may change them. 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 course work item. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting developer project did not |
| // create the corresponding course work, if the user is not permitted to make |
| // the requested modification to the student submission, or for access errors. |
| // * `INVALID_ARGUMENT` if the request is malformed. * `FAILED_PRECONDITION` if |
| // the requested course work has already been deleted. * `NOT_FOUND` if the |
| // requested course, course work, or student submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the course work. |
| func (r *CoursesCourseWorkService) Patch(courseId string, id string, coursework *CourseWork) *CoursesCourseWorkPatchCall { |
| c := &CoursesCourseWorkPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| c.coursework = coursework |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Mask that identifies |
| // which fields on the course work 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 `CourseWork` object. If a field that does not support empty |
| // values is included in the update mask and not set in the `CourseWork` |
| // object, an `INVALID_ARGUMENT` error is returned. The following fields may be |
| // specified by teachers: * `title` * `description` * `state` * `due_date` * |
| // `due_time` * `max_points` * `scheduled_time` * |
| // `submission_modification_mode` * `topic_id` |
| func (c *CoursesCourseWorkPatchCall) UpdateMask(updateMask string) *CoursesCourseWorkPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkPatchCall) Fields(s ...googleapi.Field) *CoursesCourseWorkPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkPatchCall) Context(ctx context.Context) *CoursesCourseWorkPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.coursework) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWork.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkPatchCall) Do(opts ...googleapi.CallOption) (*CourseWork, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWork{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsGetCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a student submission. * `PERMISSION_DENIED` if the requesting |
| // user is not permitted to access the requested course, course work, or |
| // student submission or for access errors. * `INVALID_ARGUMENT` if the request |
| // is malformed. * `NOT_FOUND` if the requested course, course work, or student |
| // submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: Identifier of the course work. |
| // - id: Identifier of the student submission. |
| func (r *CoursesCourseWorkStudentSubmissionsService) Get(courseId string, courseWorkId string, id string) *CoursesCourseWorkStudentSubmissionsGetCall { |
| c := &CoursesCourseWorkStudentSubmissionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsGetCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesCourseWorkStudentSubmissionsGetCall) IfNoneMatch(entityTag string) *CoursesCourseWorkStudentSubmissionsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsGetCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *StudentSubmission.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkStudentSubmissionsGetCall) Do(opts ...googleapi.CallOption) (*StudentSubmission, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &StudentSubmission{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsListCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of student submissions that the requester is permitted |
| // to view, factoring in the OAuth scopes of the request. `-` may be specified |
| // as the `course_work_id` to include student submissions for multiple course |
| // work items. Course students may only view their own work. Course teachers |
| // and domain administrators may view all student submissions. 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 does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: 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. |
| func (r *CoursesCourseWorkStudentSubmissionsService) List(courseId string, courseWorkId string) *CoursesCourseWorkStudentSubmissionsListCall { |
| c := &CoursesCourseWorkStudentSubmissionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| return c |
| } |
| |
| // Late sets the optional parameter "late": Requested lateness value. If |
| // specified, returned student submissions are restricted by the requested |
| // value. If unspecified, submissions are returned regardless of `late` value. |
| // |
| // Possible values: |
| // |
| // "LATE_VALUES_UNSPECIFIED" - No restriction on submission late values |
| // |
| // specified. |
| // |
| // "LATE_ONLY" - Return StudentSubmissions where late is true. |
| // "NOT_LATE_ONLY" - Return StudentSubmissions where late is false. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) Late(late string) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.urlParams_.Set("late", late) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) PageSize(pageSize int64) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) PageToken(pageToken string) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // States sets the optional parameter "states": Requested submission states. If |
| // specified, returned student submissions match one of the specified |
| // submission states. |
| // |
| // Possible values: |
| // |
| // "SUBMISSION_STATE_UNSPECIFIED" - No state specified. This should never be |
| // |
| // returned. |
| // |
| // "NEW" - The student has never accessed this submission. Attachments are |
| // |
| // not returned and timestamps is not set. |
| // |
| // "CREATED" - Has been created. |
| // "TURNED_IN" - Has been turned in to the teacher. |
| // "RETURNED" - Has been returned to the student. |
| // "RECLAIMED_BY_STUDENT" - Student chose to "unsubmit" the assignment. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) States(states ...string) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.urlParams_.SetMulti("states", append([]string{}, states...)) |
| return c |
| } |
| |
| // UserId sets the optional parameter "userId": Optional argument to restrict |
| // returned student work to those owned by the student with the specified |
| // identifier. 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 |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) UserId(userId string) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.urlParams_.Set("userId", userId) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) IfNoneMatch(entityTag string) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListStudentSubmissionsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) Do(opts ...googleapi.CallOption) (*ListStudentSubmissionsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListStudentSubmissionsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesCourseWorkStudentSubmissionsListCall) Pages(ctx context.Context, f func(*ListStudentSubmissionsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| id string |
| modifyattachmentsrequest *ModifyAttachmentsRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // ModifyAttachments: Modifies attachments of student submission. Attachments |
| // may only be added to student submissions belonging to course work objects |
| // with a `workType` of `ASSIGNMENT`. 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 course work item. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to |
| // access the requested course or course work, if the user is not permitted to |
| // modify attachments on the requested student submission, or for access |
| // errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if |
| // the requested course, course work, or student submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: Identifier of the course work. |
| // - id: Identifier of the student submission. |
| func (r *CoursesCourseWorkStudentSubmissionsService) ModifyAttachments(courseId string, courseWorkId string, id string, modifyattachmentsrequest *ModifyAttachmentsRequest) *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall { |
| c := &CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| c.id = id |
| c.modifyattachmentsrequest = modifyattachmentsrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.modifyattachmentsrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.modifyAttachments" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *StudentSubmission.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkStudentSubmissionsModifyAttachmentsCall) Do(opts ...googleapi.CallOption) (*StudentSubmission, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &StudentSubmission{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsPatchCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| id string |
| studentsubmission *StudentSubmission |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates one or more fields of a student submission. See |
| // google.classroom.v1.StudentSubmission for details of which fields may be |
| // updated and who may change them. 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 course work item. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting developer project did not |
| // create the corresponding course work, if the user is not permitted to make |
| // the requested modification to the student submission, or for access errors. |
| // * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the |
| // requested course, course work, or student submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: Identifier of the course work. |
| // - id: Identifier of the student submission. |
| func (r *CoursesCourseWorkStudentSubmissionsService) Patch(courseId string, courseWorkId string, id string, studentsubmission *StudentSubmission) *CoursesCourseWorkStudentSubmissionsPatchCall { |
| c := &CoursesCourseWorkStudentSubmissionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| c.id = id |
| c.studentsubmission = studentsubmission |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Mask that identifies |
| // which fields on the student submission to update. 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` |
| func (c *CoursesCourseWorkStudentSubmissionsPatchCall) UpdateMask(updateMask string) *CoursesCourseWorkStudentSubmissionsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsPatchCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsPatchCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.studentsubmission) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *StudentSubmission.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkStudentSubmissionsPatchCall) Do(opts ...googleapi.CallOption) (*StudentSubmission, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &StudentSubmission{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsReclaimCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| id string |
| reclaimstudentsubmissionrequest *ReclaimStudentSubmissionRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Reclaim: 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 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 ID |
| // (https://support.google.com/cloud/answer/6158849) used to create the |
| // corresponding course work item. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to |
| // access the requested course or course work, unsubmit the requested student |
| // submission, or for access errors. * `FAILED_PRECONDITION` if the student |
| // submission has not been turned in. * `INVALID_ARGUMENT` if the request is |
| // malformed. * `NOT_FOUND` if the requested course, course work, or student |
| // submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: Identifier of the course work. |
| // - id: Identifier of the student submission. |
| func (r *CoursesCourseWorkStudentSubmissionsService) Reclaim(courseId string, courseWorkId string, id string, reclaimstudentsubmissionrequest *ReclaimStudentSubmissionRequest) *CoursesCourseWorkStudentSubmissionsReclaimCall { |
| c := &CoursesCourseWorkStudentSubmissionsReclaimCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| c.id = id |
| c.reclaimstudentsubmissionrequest = reclaimstudentsubmissionrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsReclaimCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsReclaimCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsReclaimCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsReclaimCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsReclaimCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsReclaimCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.reclaimstudentsubmissionrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.reclaim" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkStudentSubmissionsReclaimCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsReturnCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| id string |
| returnstudentsubmissionrequest *ReturnStudentSubmissionRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Return: Returns a student submission. Returning a student submission |
| // transfers ownership of attached Drive files to the student and may also |
| // update the submission state. Unlike the Classroom application, returning a |
| // student submission does not set assignedGrade to the draftGrade value. Only |
| // a teacher of the course that contains the requested student submission may |
| // call this method. 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 course work item. This method returns the |
| // following error codes: * `PERMISSION_DENIED` if the requesting user is not |
| // permitted to access the requested course or course work, return the |
| // requested student submission, or for access errors. * `INVALID_ARGUMENT` if |
| // the request is malformed. * `NOT_FOUND` if the requested course, course |
| // work, or student submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: Identifier of the course work. |
| // - id: Identifier of the student submission. |
| func (r *CoursesCourseWorkStudentSubmissionsService) Return(courseId string, courseWorkId string, id string, returnstudentsubmissionrequest *ReturnStudentSubmissionRequest) *CoursesCourseWorkStudentSubmissionsReturnCall { |
| c := &CoursesCourseWorkStudentSubmissionsReturnCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| c.id = id |
| c.returnstudentsubmissionrequest = returnstudentsubmissionrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsReturnCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsReturnCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsReturnCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsReturnCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsReturnCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsReturnCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.returnstudentsubmissionrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.return" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkStudentSubmissionsReturnCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkStudentSubmissionsTurnInCall struct { |
| s *Service |
| courseId string |
| courseWorkId string |
| id string |
| turninstudentsubmissionrequest *TurnInStudentSubmissionRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // TurnIn: Turns in a student submission. Turning in a student submission |
| // transfers ownership of attached Drive files to the teacher and may also |
| // update the submission state. This may only be called by the student that |
| // owns the specified student submission. 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 course work item. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to |
| // access the requested course or course work, turn in the requested student |
| // submission, or for access errors. * `INVALID_ARGUMENT` if the request is |
| // malformed. * `NOT_FOUND` if the requested course, course work, or student |
| // submission does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - courseWorkId: Identifier of the course work. |
| // - id: Identifier of the student submission. |
| func (r *CoursesCourseWorkStudentSubmissionsService) TurnIn(courseId string, courseWorkId string, id string, turninstudentsubmissionrequest *TurnInStudentSubmissionRequest) *CoursesCourseWorkStudentSubmissionsTurnInCall { |
| c := &CoursesCourseWorkStudentSubmissionsTurnInCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseWorkId = courseWorkId |
| c.id = id |
| c.turninstudentsubmissionrequest = turninstudentsubmissionrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkStudentSubmissionsTurnInCall) Fields(s ...googleapi.Field) *CoursesCourseWorkStudentSubmissionsTurnInCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkStudentSubmissionsTurnInCall) Context(ctx context.Context) *CoursesCourseWorkStudentSubmissionsTurnInCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkStudentSubmissionsTurnInCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkStudentSubmissionsTurnInCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.turninstudentsubmissionrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "courseWorkId": c.courseWorkId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWork.studentSubmissions.turnIn" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkStudentSubmissionsTurnInCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkMaterialsCreateCall struct { |
| s *Service |
| courseId string |
| courseworkmaterial *CourseWorkMaterial |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a course work material. This method returns the following |
| // error codes: * `PERMISSION_DENIED` if the requesting user is not permitted |
| // to access the requested course, create course work material in the requested |
| // course, share a Drive attachment, or for access errors. * `INVALID_ARGUMENT` |
| // if the request is malformed or if more than 20 * materials are provided. * |
| // `NOT_FOUND` if the requested course does not exist. * `FAILED_PRECONDITION` |
| // for the following request error: * AttachmentNotVisible |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesCourseWorkMaterialsService) Create(courseId string, courseworkmaterial *CourseWorkMaterial) *CoursesCourseWorkMaterialsCreateCall { |
| c := &CoursesCourseWorkMaterialsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.courseworkmaterial = courseworkmaterial |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkMaterialsCreateCall) Fields(s ...googleapi.Field) *CoursesCourseWorkMaterialsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkMaterialsCreateCall) Context(ctx context.Context) *CoursesCourseWorkMaterialsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkMaterialsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkMaterialsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.courseworkmaterial) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWorkMaterials") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWorkMaterials.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWorkMaterial.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkMaterialsCreateCall) Do(opts ...googleapi.CallOption) (*CourseWorkMaterial, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWorkMaterial{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkMaterialsDeleteCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a course work material. 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 course work material item. This method returns the following |
| // error codes: * `PERMISSION_DENIED` if the requesting developer project did |
| // not create the corresponding course work material, if the requesting user is |
| // not permitted to delete the requested course or for access errors. * |
| // `FAILED_PRECONDITION` if the requested course work material has already been |
| // deleted. * `NOT_FOUND` if no course exists with the requested ID. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the course work material to delete. This identifier is a |
| // Classroom-assigned identifier. |
| func (r *CoursesCourseWorkMaterialsService) Delete(courseId string, id string) *CoursesCourseWorkMaterialsDeleteCall { |
| c := &CoursesCourseWorkMaterialsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkMaterialsDeleteCall) Fields(s ...googleapi.Field) *CoursesCourseWorkMaterialsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkMaterialsDeleteCall) Context(ctx context.Context) *CoursesCourseWorkMaterialsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkMaterialsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkMaterialsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWorkMaterials/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWorkMaterials.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkMaterialsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkMaterialsGetCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a course work material. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to |
| // access the requested course or course work material, or for access errors. * |
| // `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the |
| // requested course or course work material does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the course work material. |
| func (r *CoursesCourseWorkMaterialsService) Get(courseId string, id string) *CoursesCourseWorkMaterialsGetCall { |
| c := &CoursesCourseWorkMaterialsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkMaterialsGetCall) Fields(s ...googleapi.Field) *CoursesCourseWorkMaterialsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesCourseWorkMaterialsGetCall) IfNoneMatch(entityTag string) *CoursesCourseWorkMaterialsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkMaterialsGetCall) Context(ctx context.Context) *CoursesCourseWorkMaterialsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkMaterialsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkMaterialsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWorkMaterials/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWorkMaterials.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWorkMaterial.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkMaterialsGetCall) Do(opts ...googleapi.CallOption) (*CourseWorkMaterial, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWorkMaterial{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesCourseWorkMaterialsListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of course work material that the requester is permitted |
| // to view. Course students may only view `PUBLISHED` course work material. |
| // Course teachers and domain administrators may view all course work material. |
| // 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesCourseWorkMaterialsService) List(courseId string) *CoursesCourseWorkMaterialsListCall { |
| c := &CoursesCourseWorkMaterialsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // CourseWorkMaterialStates sets the optional parameter |
| // "courseWorkMaterialStates": Restriction on the work status to return. Only |
| // course work material that matches is returned. If unspecified, items with a |
| // work status of `PUBLISHED` is returned. |
| // |
| // Possible values: |
| // |
| // "COURSEWORK_MATERIAL_STATE_UNSPECIFIED" - No state specified. This is |
| // |
| // never returned. |
| // |
| // "PUBLISHED" - Status for course work material that has been published. |
| // |
| // This is the default state. |
| // |
| // "DRAFT" - Status for a course work material that is not yet published. |
| // |
| // Course work material in this state is visible only to course teachers and |
| // domain administrators. |
| // |
| // "DELETED" - Status for course work material that was published but is now |
| // |
| // deleted. Course work material in this state is visible only to course |
| // teachers and domain administrators. Course work material in this state is |
| // deleted after some time. |
| func (c *CoursesCourseWorkMaterialsListCall) CourseWorkMaterialStates(courseWorkMaterialStates ...string) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.SetMulti("courseWorkMaterialStates", append([]string{}, courseWorkMaterialStates...)) |
| return c |
| } |
| |
| // MaterialDriveId sets the optional parameter "materialDriveId": Optional |
| // filtering for course work material with at least one Drive material whose ID |
| // matches the provided string. If `material_link` is also specified, course |
| // work material must have materials matching both filters. |
| func (c *CoursesCourseWorkMaterialsListCall) MaterialDriveId(materialDriveId string) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.Set("materialDriveId", materialDriveId) |
| return c |
| } |
| |
| // MaterialLink sets the optional parameter "materialLink": Optional filtering |
| // for course work material with at least one link material whose URL partially |
| // matches the provided string. |
| func (c *CoursesCourseWorkMaterialsListCall) MaterialLink(materialLink string) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.Set("materialLink", materialLink) |
| return c |
| } |
| |
| // OrderBy sets the optional parameter "orderBy": 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` |
| func (c *CoursesCourseWorkMaterialsListCall) OrderBy(orderBy string) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.Set("orderBy", orderBy) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesCourseWorkMaterialsListCall) PageSize(pageSize int64) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesCourseWorkMaterialsListCall) PageToken(pageToken string) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkMaterialsListCall) Fields(s ...googleapi.Field) *CoursesCourseWorkMaterialsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesCourseWorkMaterialsListCall) IfNoneMatch(entityTag string) *CoursesCourseWorkMaterialsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkMaterialsListCall) Context(ctx context.Context) *CoursesCourseWorkMaterialsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkMaterialsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkMaterialsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWorkMaterials") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWorkMaterials.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListCourseWorkMaterialResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *CoursesCourseWorkMaterialsListCall) Do(opts ...googleapi.CallOption) (*ListCourseWorkMaterialResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListCourseWorkMaterialResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesCourseWorkMaterialsListCall) Pages(ctx context.Context, f func(*ListCourseWorkMaterialResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesCourseWorkMaterialsPatchCall struct { |
| s *Service |
| courseId string |
| id string |
| courseworkmaterial *CourseWorkMaterial |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates one or more fields of a course work material. This method |
| // returns the following error codes: * `PERMISSION_DENIED` if the requesting |
| // developer project for access errors. * `INVALID_ARGUMENT` if the request is |
| // malformed. * `FAILED_PRECONDITION` if the requested course work material has |
| // already been deleted. * `NOT_FOUND` if the requested course or course work |
| // material does not exist |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the course work material. |
| func (r *CoursesCourseWorkMaterialsService) Patch(courseId string, id string, courseworkmaterial *CourseWorkMaterial) *CoursesCourseWorkMaterialsPatchCall { |
| c := &CoursesCourseWorkMaterialsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| c.courseworkmaterial = courseworkmaterial |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Mask that identifies |
| // which fields on the course work material 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 course work material object. If a field that does |
| // not support empty values is included in the update mask and not set in the |
| // course work material object, an `INVALID_ARGUMENT` error is returned. The |
| // following fields may be specified by teachers: * `title` * `description` * |
| // `state` * `scheduled_time` * `topic_id` |
| func (c *CoursesCourseWorkMaterialsPatchCall) UpdateMask(updateMask string) *CoursesCourseWorkMaterialsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesCourseWorkMaterialsPatchCall) Fields(s ...googleapi.Field) *CoursesCourseWorkMaterialsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesCourseWorkMaterialsPatchCall) Context(ctx context.Context) *CoursesCourseWorkMaterialsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesCourseWorkMaterialsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesCourseWorkMaterialsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.courseworkmaterial) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/courseWorkMaterials/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.courseWorkMaterials.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *CourseWorkMaterial.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesCourseWorkMaterialsPatchCall) Do(opts ...googleapi.CallOption) (*CourseWorkMaterial, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &CourseWorkMaterial{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesStudentsCreateCall struct { |
| s *Service |
| courseId string |
| student *Student |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Adds a user as a student of a course. Domain administrators are |
| // permitted to directly add |
| // (https://developers.google.com/classroom/guides/manage-users) users within |
| // their domain as students to courses within their domain. Students are |
| // permitted to add themselves to a course using an enrollment code. This |
| // method returns the following error codes: * `PERMISSION_DENIED` if the |
| // requesting user is not permitted to create students in this course or for |
| // access errors. * `NOT_FOUND` if the requested course ID does not exist. * |
| // `FAILED_PRECONDITION` if the requested user's account is disabled, for the |
| // following request errors: * CourseMemberLimitReached * CourseNotModifiable * |
| // UserGroupsMembershipLimitReached * InactiveCourseOwner * `ALREADY_EXISTS` if |
| // the user is already a student or teacher in the course. |
| // |
| // - courseId: Identifier of the course to create the student in. This |
| // identifier can be either the Classroom-assigned identifier or an alias. |
| func (r *CoursesStudentsService) Create(courseId string, student *Student) *CoursesStudentsCreateCall { |
| c := &CoursesStudentsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.student = student |
| return c |
| } |
| |
| // EnrollmentCode sets the optional parameter "enrollmentCode": Enrollment code |
| // of the course to create the student in. This code is required if userId |
| // corresponds to the requesting user; it may be omitted if the requesting user |
| // has administrative permissions to create students for any user. |
| func (c *CoursesStudentsCreateCall) EnrollmentCode(enrollmentCode string) *CoursesStudentsCreateCall { |
| c.urlParams_.Set("enrollmentCode", enrollmentCode) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesStudentsCreateCall) Fields(s ...googleapi.Field) *CoursesStudentsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesStudentsCreateCall) Context(ctx context.Context) *CoursesStudentsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesStudentsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesStudentsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.student) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/students") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.students.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Student.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesStudentsCreateCall) Do(opts ...googleapi.CallOption) (*Student, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Student{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesStudentsDeleteCall struct { |
| s *Service |
| courseId string |
| userId string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a student of a course. This method returns the following |
| // error codes: * `PERMISSION_DENIED` if the requesting user is not permitted |
| // to delete students of this course or for access errors. * `NOT_FOUND` if no |
| // student of this course has the requested ID or if the course does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - userId: Identifier of the student to delete. 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. |
| func (r *CoursesStudentsService) Delete(courseId string, userId string) *CoursesStudentsDeleteCall { |
| c := &CoursesStudentsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.userId = userId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesStudentsDeleteCall) Fields(s ...googleapi.Field) *CoursesStudentsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesStudentsDeleteCall) Context(ctx context.Context) *CoursesStudentsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesStudentsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesStudentsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/students/{userId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "userId": c.userId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.students.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesStudentsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesStudentsGetCall struct { |
| s *Service |
| courseId string |
| userId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a student of a course. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to view |
| // students of this course or for access errors. * `NOT_FOUND` if no student of |
| // this course has the requested ID or if the course does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - userId: Identifier of the student to return. 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. |
| func (r *CoursesStudentsService) Get(courseId string, userId string) *CoursesStudentsGetCall { |
| c := &CoursesStudentsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.userId = userId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesStudentsGetCall) Fields(s ...googleapi.Field) *CoursesStudentsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesStudentsGetCall) IfNoneMatch(entityTag string) *CoursesStudentsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesStudentsGetCall) Context(ctx context.Context) *CoursesStudentsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesStudentsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesStudentsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/students/{userId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "userId": c.userId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.students.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Student.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesStudentsGetCall) Do(opts ...googleapi.CallOption) (*Student, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Student{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesStudentsListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of students of this course that the requester is |
| // permitted to view. This method returns the following error codes: * |
| // `NOT_FOUND` if the course does not exist. * `PERMISSION_DENIED` for access |
| // errors. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesStudentsService) List(courseId string) *CoursesStudentsListCall { |
| c := &CoursesStudentsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. The default is 30 if unspecified or `0`. The server may return fewer |
| // than the specified number of results. |
| func (c *CoursesStudentsListCall) PageSize(pageSize int64) *CoursesStudentsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesStudentsListCall) PageToken(pageToken string) *CoursesStudentsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesStudentsListCall) Fields(s ...googleapi.Field) *CoursesStudentsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesStudentsListCall) IfNoneMatch(entityTag string) *CoursesStudentsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesStudentsListCall) Context(ctx context.Context) *CoursesStudentsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesStudentsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesStudentsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/students") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.students.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListStudentsResponse.ServerResponse.Header or (if a response was returned |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesStudentsListCall) Do(opts ...googleapi.CallOption) (*ListStudentsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListStudentsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesStudentsListCall) Pages(ctx context.Context, f func(*ListStudentsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesTeachersCreateCall struct { |
| s *Service |
| courseId string |
| teacher *Teacher |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a teacher of a course. Domain administrators are permitted |
| // to directly add |
| // (https://developers.google.com/classroom/guides/manage-users) users within |
| // their domain as teachers to courses within their domain. Non-admin users |
| // should send an Invitation instead. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to |
| // create teachers in this course or for access errors. * `NOT_FOUND` if the |
| // requested course ID does not exist. * `FAILED_PRECONDITION` if the requested |
| // user's account is disabled, for the following request errors: * |
| // CourseMemberLimitReached * CourseNotModifiable * CourseTeacherLimitReached * |
| // UserGroupsMembershipLimitReached * InactiveCourseOwner * `ALREADY_EXISTS` if |
| // the user is already a teacher or student in the course. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesTeachersService) Create(courseId string, teacher *Teacher) *CoursesTeachersCreateCall { |
| c := &CoursesTeachersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.teacher = teacher |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTeachersCreateCall) Fields(s ...googleapi.Field) *CoursesTeachersCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTeachersCreateCall) Context(ctx context.Context) *CoursesTeachersCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTeachersCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTeachersCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.teacher) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/teachers") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.teachers.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Teacher.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTeachersCreateCall) Do(opts ...googleapi.CallOption) (*Teacher, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Teacher{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesTeachersDeleteCall struct { |
| s *Service |
| courseId string |
| userId string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Removes the specified teacher from the specified course. This method |
| // returns the following error codes: * `PERMISSION_DENIED` if the requesting |
| // user is not permitted to delete teachers of this course or for access |
| // errors. * `NOT_FOUND` if no teacher of this course has the requested ID or |
| // if the course does not exist. * `FAILED_PRECONDITION` if the requested ID |
| // belongs to the primary teacher of this course. * `FAILED_PRECONDITION` if |
| // the requested ID belongs to the owner of the course Drive folder. * |
| // `FAILED_PRECONDITION` if the course no longer has an active owner. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - userId: Identifier of the teacher to delete. 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. |
| func (r *CoursesTeachersService) Delete(courseId string, userId string) *CoursesTeachersDeleteCall { |
| c := &CoursesTeachersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.userId = userId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTeachersDeleteCall) Fields(s ...googleapi.Field) *CoursesTeachersDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTeachersDeleteCall) Context(ctx context.Context) *CoursesTeachersDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTeachersDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTeachersDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/teachers/{userId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "userId": c.userId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.teachers.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTeachersDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesTeachersGetCall struct { |
| s *Service |
| courseId string |
| userId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a teacher of a course. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to view |
| // teachers of this course or for access errors. * `NOT_FOUND` if no teacher of |
| // this course has the requested ID or if the course does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - userId: Identifier of the teacher to return. 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. |
| func (r *CoursesTeachersService) Get(courseId string, userId string) *CoursesTeachersGetCall { |
| c := &CoursesTeachersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.userId = userId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTeachersGetCall) Fields(s ...googleapi.Field) *CoursesTeachersGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesTeachersGetCall) IfNoneMatch(entityTag string) *CoursesTeachersGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTeachersGetCall) Context(ctx context.Context) *CoursesTeachersGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTeachersGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTeachersGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/teachers/{userId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "userId": c.userId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.teachers.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Teacher.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTeachersGetCall) Do(opts ...googleapi.CallOption) (*Teacher, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Teacher{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesTeachersListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of teachers of this course that the requester is |
| // permitted to view. This method returns the following error codes: * |
| // `NOT_FOUND` if the course does not exist. * `PERMISSION_DENIED` for access |
| // errors. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesTeachersService) List(courseId string) *CoursesTeachersListCall { |
| c := &CoursesTeachersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. The default is 30 if unspecified or `0`. The server may return fewer |
| // than the specified number of results. |
| func (c *CoursesTeachersListCall) PageSize(pageSize int64) *CoursesTeachersListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesTeachersListCall) PageToken(pageToken string) *CoursesTeachersListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTeachersListCall) Fields(s ...googleapi.Field) *CoursesTeachersListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesTeachersListCall) IfNoneMatch(entityTag string) *CoursesTeachersListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTeachersListCall) Context(ctx context.Context) *CoursesTeachersListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTeachersListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTeachersListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/teachers") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.teachers.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListTeachersResponse.ServerResponse.Header or (if a response was returned |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesTeachersListCall) Do(opts ...googleapi.CallOption) (*ListTeachersResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListTeachersResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesTeachersListCall) Pages(ctx context.Context, f func(*ListTeachersResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesTopicsCreateCall struct { |
| s *Service |
| courseId string |
| topic *Topic |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a topic. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not permitted to access the |
| // requested course, create a topic in the requested course, or for access |
| // errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if |
| // the requested course does not exist. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesTopicsService) Create(courseId string, topic *Topic) *CoursesTopicsCreateCall { |
| c := &CoursesTopicsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.topic = topic |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTopicsCreateCall) Fields(s ...googleapi.Field) *CoursesTopicsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTopicsCreateCall) Context(ctx context.Context) *CoursesTopicsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTopicsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTopicsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.topic) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/topics") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.topics.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Topic.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTopicsCreateCall) Do(opts ...googleapi.CallOption) (*Topic, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Topic{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesTopicsDeleteCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a topic. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not allowed to delete the |
| // requested topic or for access errors. * `FAILED_PRECONDITION` if the |
| // requested topic has already been deleted. * `NOT_FOUND` if no course or |
| // topic exists with the requested ID. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the topic to delete. |
| func (r *CoursesTopicsService) Delete(courseId string, id string) *CoursesTopicsDeleteCall { |
| c := &CoursesTopicsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTopicsDeleteCall) Fields(s ...googleapi.Field) *CoursesTopicsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTopicsDeleteCall) Context(ctx context.Context) *CoursesTopicsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTopicsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTopicsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/topics/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.topics.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTopicsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesTopicsGetCall struct { |
| s *Service |
| courseId string |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a topic. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not permitted to access the |
| // requested course or topic, or for access errors. * `INVALID_ARGUMENT` if the |
| // request is malformed. * `NOT_FOUND` if the requested course or topic does |
| // not exist. |
| // |
| // - courseId: Identifier of the course. |
| // - id: Identifier of the topic. |
| func (r *CoursesTopicsService) Get(courseId string, id string) *CoursesTopicsGetCall { |
| c := &CoursesTopicsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTopicsGetCall) Fields(s ...googleapi.Field) *CoursesTopicsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesTopicsGetCall) IfNoneMatch(entityTag string) *CoursesTopicsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTopicsGetCall) Context(ctx context.Context) *CoursesTopicsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTopicsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTopicsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/topics/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.topics.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Topic.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTopicsGetCall) Do(opts ...googleapi.CallOption) (*Topic, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Topic{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type CoursesTopicsListCall struct { |
| s *Service |
| courseId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns the list of topics that the requester is permitted to view. |
| // 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. |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| func (r *CoursesTopicsService) List(courseId string) *CoursesTopicsListCall { |
| c := &CoursesTopicsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *CoursesTopicsListCall) PageSize(pageSize int64) *CoursesTopicsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *CoursesTopicsListCall) PageToken(pageToken string) *CoursesTopicsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTopicsListCall) Fields(s ...googleapi.Field) *CoursesTopicsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *CoursesTopicsListCall) IfNoneMatch(entityTag string) *CoursesTopicsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTopicsListCall) Context(ctx context.Context) *CoursesTopicsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTopicsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTopicsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/topics") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.topics.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListTopicResponse.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *CoursesTopicsListCall) Do(opts ...googleapi.CallOption) (*ListTopicResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListTopicResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *CoursesTopicsListCall) Pages(ctx context.Context, f func(*ListTopicResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type CoursesTopicsPatchCall struct { |
| s *Service |
| courseId string |
| id string |
| topic *Topic |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates one or more fields of a topic. This method returns the |
| // following error codes: * `PERMISSION_DENIED` if the requesting developer |
| // project did not create the corresponding topic or for access errors. * |
| // `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the |
| // requested course or topic does not exist |
| // |
| // - courseId: Identifier of the course. This identifier can be either the |
| // Classroom-assigned identifier or an alias. |
| // - id: Identifier of the topic. |
| func (r *CoursesTopicsService) Patch(courseId string, id string, topic *Topic) *CoursesTopicsPatchCall { |
| c := &CoursesTopicsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.courseId = courseId |
| c.id = id |
| c.topic = topic |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Mask that identifies |
| // which fields on the topic 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 |
| // Topic object. If a field that does not support empty values is included in |
| // the update mask and not set in the Topic object, an `INVALID_ARGUMENT` error |
| // is returned. The following fields may be specified: * `name` |
| func (c *CoursesTopicsPatchCall) UpdateMask(updateMask string) *CoursesTopicsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *CoursesTopicsPatchCall) Fields(s ...googleapi.Field) *CoursesTopicsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *CoursesTopicsPatchCall) Context(ctx context.Context) *CoursesTopicsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *CoursesTopicsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *CoursesTopicsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.topic) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/courses/{courseId}/topics/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "courseId": c.courseId, |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.courses.topics.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Topic.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *CoursesTopicsPatchCall) Do(opts ...googleapi.CallOption) (*Topic, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Topic{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type InvitationsAcceptCall struct { |
| s *Service |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Accept: Accepts an invitation, removing it and adding the invited user to |
| // the teachers or students (as appropriate) of the specified course. Only the |
| // invited user may accept an invitation. This method returns the following |
| // error codes: * `PERMISSION_DENIED` if the requesting user is not permitted |
| // to accept the requested invitation or for access errors. * |
| // `FAILED_PRECONDITION` for the following request errors: * |
| // CourseMemberLimitReached * CourseNotModifiable * CourseTeacherLimitReached * |
| // UserGroupsMembershipLimitReached * `NOT_FOUND` if no invitation exists with |
| // the requested ID. |
| // |
| // - id: Identifier of the invitation to accept. |
| func (r *InvitationsService) Accept(id string) *InvitationsAcceptCall { |
| c := &InvitationsAcceptCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *InvitationsAcceptCall) Fields(s ...googleapi.Field) *InvitationsAcceptCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *InvitationsAcceptCall) Context(ctx context.Context) *InvitationsAcceptCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *InvitationsAcceptCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *InvitationsAcceptCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/invitations/{id}:accept") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.invitations.accept" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *InvitationsAcceptCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type InvitationsCreateCall struct { |
| s *Service |
| invitation *Invitation |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: 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. This |
| // method returns the following error codes: * `PERMISSION_DENIED` if the |
| // requesting user is not permitted to create invitations for this course or |
| // for access errors. * `NOT_FOUND` if the course or the user does not exist. * |
| // `FAILED_PRECONDITION`: * if the requested user's account is disabled. * if |
| // the user already has this role or a role with greater permissions. * for the |
| // following request errors: * IneligibleOwner * `ALREADY_EXISTS` if an |
| // invitation for the specified user and course already exists. |
| func (r *InvitationsService) Create(invitation *Invitation) *InvitationsCreateCall { |
| c := &InvitationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.invitation = invitation |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *InvitationsCreateCall) Fields(s ...googleapi.Field) *InvitationsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *InvitationsCreateCall) Context(ctx context.Context) *InvitationsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *InvitationsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *InvitationsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.invitation) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/invitations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.invitations.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Invitation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *InvitationsCreateCall) Do(opts ...googleapi.CallOption) (*Invitation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Invitation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type InvitationsDeleteCall struct { |
| s *Service |
| id string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes an invitation. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if the requesting user is not permitted to |
| // delete the requested invitation or for access errors. * `NOT_FOUND` if no |
| // invitation exists with the requested ID. |
| // |
| // - id: Identifier of the invitation to delete. |
| func (r *InvitationsService) Delete(id string) *InvitationsDeleteCall { |
| c := &InvitationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *InvitationsDeleteCall) Fields(s ...googleapi.Field) *InvitationsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *InvitationsDeleteCall) Context(ctx context.Context) *InvitationsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *InvitationsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *InvitationsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/invitations/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.invitations.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *InvitationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type InvitationsGetCall struct { |
| s *Service |
| id string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns an invitation. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the requesting user is not permitted to view the |
| // requested invitation or for access errors. * `NOT_FOUND` if no invitation |
| // exists with the requested ID. |
| // |
| // - id: Identifier of the invitation to return. |
| func (r *InvitationsService) Get(id string) *InvitationsGetCall { |
| c := &InvitationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.id = id |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *InvitationsGetCall) Fields(s ...googleapi.Field) *InvitationsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *InvitationsGetCall) IfNoneMatch(entityTag string) *InvitationsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *InvitationsGetCall) Context(ctx context.Context) *InvitationsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *InvitationsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *InvitationsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/invitations/{id}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "id": c.id, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.invitations.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Invitation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *InvitationsGetCall) Do(opts ...googleapi.CallOption) (*Invitation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Invitation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type InvitationsListCall struct { |
| s *Service |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of invitations that the requesting user is permitted to |
| // view, restricted to those that match the list request. *Note:* At least one |
| // of `user_id` or `course_id` must be supplied. Both fields can be supplied. |
| // This method returns the following error codes: * `PERMISSION_DENIED` for |
| // access errors. |
| func (r *InvitationsService) List() *InvitationsListCall { |
| c := &InvitationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| return c |
| } |
| |
| // CourseId sets the optional parameter "courseId": Restricts returned |
| // invitations to those for a course with the specified identifier. |
| func (c *InvitationsListCall) CourseId(courseId string) *InvitationsListCall { |
| c.urlParams_.Set("courseId", courseId) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. The default is 500 if unspecified or `0`. The server may return |
| // fewer than the specified number of results. |
| func (c *InvitationsListCall) PageSize(pageSize int64) *InvitationsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *InvitationsListCall) PageToken(pageToken string) *InvitationsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // UserId sets the optional parameter "userId": Restricts returned invitations |
| // to those for a specific user. 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 |
| func (c *InvitationsListCall) UserId(userId string) *InvitationsListCall { |
| c.urlParams_.Set("userId", userId) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *InvitationsListCall) Fields(s ...googleapi.Field) *InvitationsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *InvitationsListCall) IfNoneMatch(entityTag string) *InvitationsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *InvitationsListCall) Context(ctx context.Context) *InvitationsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *InvitationsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *InvitationsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/invitations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.invitations.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListInvitationsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *InvitationsListCall) Do(opts ...googleapi.CallOption) (*ListInvitationsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListInvitationsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *InvitationsListCall) Pages(ctx context.Context, f func(*ListInvitationsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type RegistrationsCreateCall struct { |
| s *Service |
| registration *Registration |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: 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 |
| // current user has not granted access to the current Cloud project with the |
| // appropriate scope for the requested feed. Note that domain-wide delegation |
| // of authority is not currently supported for this purpose. If the request has |
| // the appropriate scope, but no grant exists, a Request Errors is returned. * |
| // 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. |
| func (r *RegistrationsService) Create(registration *Registration) *RegistrationsCreateCall { |
| c := &RegistrationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.registration = registration |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *RegistrationsCreateCall) Fields(s ...googleapi.Field) *RegistrationsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *RegistrationsCreateCall) Context(ctx context.Context) *RegistrationsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *RegistrationsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *RegistrationsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.registration) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/registrations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.registrations.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Registration.ServerResponse.Header or (if a response was returned at all) |
| // in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *RegistrationsCreateCall) Do(opts ...googleapi.CallOption) (*Registration, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Registration{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type RegistrationsDeleteCall struct { |
| s *Service |
| registrationId string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a `Registration`, causing Classroom to stop sending |
| // notifications for that `Registration`. |
| // |
| // - registrationId: The `registration_id` of the `Registration` to be deleted. |
| func (r *RegistrationsService) Delete(registrationId string) *RegistrationsDeleteCall { |
| c := &RegistrationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.registrationId = registrationId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *RegistrationsDeleteCall) Fields(s ...googleapi.Field) *RegistrationsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *RegistrationsDeleteCall) Context(ctx context.Context) *RegistrationsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *RegistrationsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *RegistrationsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/registrations/{registrationId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "registrationId": c.registrationId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.registrations.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *RegistrationsDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGetCall struct { |
| s *Service |
| userId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a user profile. This method returns the following error codes: |
| // * `PERMISSION_DENIED` if the requesting user is not permitted to access this |
| // user profile, if no profile exists with the requested ID, or for access |
| // errors. |
| // |
| // - userId: Identifier of the profile to return. 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. |
| func (r *UserProfilesService) Get(userId string) *UserProfilesGetCall { |
| c := &UserProfilesGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.userId = userId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGetCall) Fields(s ...googleapi.Field) *UserProfilesGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *UserProfilesGetCall) IfNoneMatch(entityTag string) *UserProfilesGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGetCall) Context(ctx context.Context) *UserProfilesGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{userId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "userId": c.userId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *UserProfile.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *UserProfilesGetCall) Do(opts ...googleapi.CallOption) (*UserProfile, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &UserProfile{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGuardianInvitationsCreateCall struct { |
| s *Service |
| studentId string |
| guardianinvitation *GuardianInvitation |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: 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 accepts the invitation, their `state` will change to `COMPLETED` |
| // and they will start receiving guardian notifications. A `Guardian` resource |
| // will also be created to represent the active guardian. The request object |
| // must have the `student_id` and `invited_email_address` fields set. Failing |
| // to set these fields, or setting any other fields in the request, will result |
| // in an error. This method returns the following error codes: * |
| // `PERMISSION_DENIED` if the current user does not have permission to manage |
| // guardians, if the guardian in question has already rejected too many |
| // requests for that student, if guardians are not enabled for the domain in |
| // question, or for other access errors. * `RESOURCE_EXHAUSTED` if the student |
| // or guardian has exceeded the guardian link limit. * `INVALID_ARGUMENT` if |
| // the guardian email address is not valid (for example, if it is too long), or |
| // if the format of the student ID provided cannot be recognized (it is not an |
| // email address, nor a `user_id` from this API). This error will also be |
| // returned if read-only fields are set, or if the `state` field is set to to a |
| // value other than `PENDING`. * `NOT_FOUND` if the student ID provided is a |
| // valid student ID, but Classroom has no record of that student. * |
| // `ALREADY_EXISTS` if there is already a pending guardian invitation for the |
| // student and `invited_email_address` provided, or if the provided |
| // `invited_email_address` matches the Google account of an existing `Guardian` |
| // for this user. |
| // |
| // - studentId: ID of the student (in standard format). |
| func (r *UserProfilesGuardianInvitationsService) Create(studentId string, guardianinvitation *GuardianInvitation) *UserProfilesGuardianInvitationsCreateCall { |
| c := &UserProfilesGuardianInvitationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| c.guardianinvitation = guardianinvitation |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardianInvitationsCreateCall) Fields(s ...googleapi.Field) *UserProfilesGuardianInvitationsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardianInvitationsCreateCall) Context(ctx context.Context) *UserProfilesGuardianInvitationsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardianInvitationsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardianInvitationsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.guardianinvitation) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardianInvitations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardianInvitations.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *GuardianInvitation.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *UserProfilesGuardianInvitationsCreateCall) Do(opts ...googleapi.CallOption) (*GuardianInvitation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &GuardianInvitation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGuardianInvitationsGetCall struct { |
| s *Service |
| studentId string |
| invitationId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a specific guardian invitation. This method returns the |
| // following error codes: * `PERMISSION_DENIED` if the requesting user is not |
| // permitted to view guardian invitations for the student identified by the |
| // `student_id`, if guardians are not enabled for the domain in question, or |
| // for other access errors. * `INVALID_ARGUMENT` if a `student_id` is |
| // specified, but its format cannot be recognized (it is not an email address, |
| // nor a `student_id` from the API, nor the literal string `me`). * `NOT_FOUND` |
| // if Classroom cannot find any record of the given student or `invitation_id`. |
| // May also be returned if the student exists, but the requesting user does not |
| // have access to see that student. |
| // |
| // - invitationId: The `id` field of the `GuardianInvitation` being requested. |
| // - studentId: The ID of the student whose guardian invitation is being |
| // requested. |
| func (r *UserProfilesGuardianInvitationsService) Get(studentId string, invitationId string) *UserProfilesGuardianInvitationsGetCall { |
| c := &UserProfilesGuardianInvitationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| c.invitationId = invitationId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardianInvitationsGetCall) Fields(s ...googleapi.Field) *UserProfilesGuardianInvitationsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *UserProfilesGuardianInvitationsGetCall) IfNoneMatch(entityTag string) *UserProfilesGuardianInvitationsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardianInvitationsGetCall) Context(ctx context.Context) *UserProfilesGuardianInvitationsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardianInvitationsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardianInvitationsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| "invitationId": c.invitationId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardianInvitations.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *GuardianInvitation.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *UserProfilesGuardianInvitationsGetCall) Do(opts ...googleapi.CallOption) (*GuardianInvitation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &GuardianInvitation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGuardianInvitationsListCall struct { |
| s *Service |
| studentId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of guardian invitations that the requesting user is |
| // permitted to view, filtered by the parameters provided. This method returns |
| // the following error codes: * `PERMISSION_DENIED` if a `student_id` is |
| // specified, and the requesting user is not permitted to view guardian |
| // invitations for that student, if "-" is specified as the `student_id` and |
| // the user is not a domain administrator, if guardians are not enabled for the |
| // domain in question, or for other access errors. * `INVALID_ARGUMENT` if a |
| // `student_id` is specified, but its format cannot be recognized (it is not an |
| // email address, nor a `student_id` from the API, nor the literal string |
| // `me`). May also be returned if an invalid `page_token` or `state` is |
| // provided. * `NOT_FOUND` if a `student_id` is specified, and its format can |
| // be recognized, but Classroom has no record of that student. |
| // |
| // - studentId: The ID of the student whose guardian invitations are to be |
| // returned. 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 * the string literal "-", |
| // indicating that results should be returned for all students that the |
| // requesting user is permitted to view guardian invitations. |
| func (r *UserProfilesGuardianInvitationsService) List(studentId string) *UserProfilesGuardianInvitationsListCall { |
| c := &UserProfilesGuardianInvitationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| return c |
| } |
| |
| // InvitedEmailAddress sets the optional parameter "invitedEmailAddress": If |
| // specified, only results with the specified `invited_email_address` are |
| // returned. |
| func (c *UserProfilesGuardianInvitationsListCall) InvitedEmailAddress(invitedEmailAddress string) *UserProfilesGuardianInvitationsListCall { |
| c.urlParams_.Set("invitedEmailAddress", invitedEmailAddress) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *UserProfilesGuardianInvitationsListCall) PageSize(pageSize int64) *UserProfilesGuardianInvitationsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *UserProfilesGuardianInvitationsListCall) PageToken(pageToken string) *UserProfilesGuardianInvitationsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // States sets the optional parameter "states": If specified, only results with |
| // the specified `state` values are returned. Otherwise, results with a `state` |
| // of `PENDING` are returned. |
| // |
| // Possible values: |
| // |
| // "GUARDIAN_INVITATION_STATE_UNSPECIFIED" - Should never be returned. |
| // "PENDING" - The invitation is active and awaiting a response. |
| // "COMPLETE" - The invitation is no longer active. It may have been |
| // |
| // accepted, declined, withdrawn or it may have expired. |
| func (c *UserProfilesGuardianInvitationsListCall) States(states ...string) *UserProfilesGuardianInvitationsListCall { |
| c.urlParams_.SetMulti("states", append([]string{}, states...)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardianInvitationsListCall) Fields(s ...googleapi.Field) *UserProfilesGuardianInvitationsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *UserProfilesGuardianInvitationsListCall) IfNoneMatch(entityTag string) *UserProfilesGuardianInvitationsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardianInvitationsListCall) Context(ctx context.Context) *UserProfilesGuardianInvitationsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardianInvitationsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardianInvitationsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardianInvitations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardianInvitations.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListGuardianInvitationsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *UserProfilesGuardianInvitationsListCall) Do(opts ...googleapi.CallOption) (*ListGuardianInvitationsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListGuardianInvitationsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *UserProfilesGuardianInvitationsListCall) Pages(ctx context.Context, f func(*ListGuardianInvitationsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type UserProfilesGuardianInvitationsPatchCall struct { |
| s *Service |
| studentId string |
| invitationId string |
| guardianinvitation *GuardianInvitation |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Modifies a guardian invitation. Currently, the only valid |
| // modification is to change the `state` from `PENDING` to `COMPLETE`. This has |
| // the effect of withdrawing the invitation. This method returns the following |
| // error codes: * `PERMISSION_DENIED` if the current user does not have |
| // permission to manage guardians, if guardians are not enabled for the domain |
| // in question or for other access errors. * `FAILED_PRECONDITION` if the |
| // guardian link is not in the `PENDING` state. * `INVALID_ARGUMENT` if the |
| // format of the student ID provided cannot be recognized (it is not an email |
| // address, nor a `user_id` from this API), or if the passed |
| // `GuardianInvitation` has a `state` other than `COMPLETE`, or if it modifies |
| // fields other than `state`. * `NOT_FOUND` if the student ID provided is a |
| // valid student ID, but Classroom has no record of that student, or if the |
| // `id` field does not refer to a guardian invitation known to Classroom. |
| // |
| // - invitationId: The `id` field of the `GuardianInvitation` to be modified. |
| // - studentId: The ID of the student whose guardian invitation is to be |
| // modified. |
| func (r *UserProfilesGuardianInvitationsService) Patch(studentId string, invitationId string, guardianinvitation *GuardianInvitation) *UserProfilesGuardianInvitationsPatchCall { |
| c := &UserProfilesGuardianInvitationsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| c.invitationId = invitationId |
| c.guardianinvitation = guardianinvitation |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Mask that identifies |
| // which fields on the course to update. This field is required to do an |
| // update. The update fails if invalid fields are specified. The following |
| // fields are valid: * `state` When set in a query parameter, this field should |
| // be specified as `updateMask=,,...` |
| func (c *UserProfilesGuardianInvitationsPatchCall) UpdateMask(updateMask string) *UserProfilesGuardianInvitationsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardianInvitationsPatchCall) Fields(s ...googleapi.Field) *UserProfilesGuardianInvitationsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardianInvitationsPatchCall) Context(ctx context.Context) *UserProfilesGuardianInvitationsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardianInvitationsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardianInvitationsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.guardianinvitation) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| "invitationId": c.invitationId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardianInvitations.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *GuardianInvitation.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *UserProfilesGuardianInvitationsPatchCall) Do(opts ...googleapi.CallOption) (*GuardianInvitation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &GuardianInvitation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGuardiansDeleteCall struct { |
| s *Service |
| studentId string |
| guardianId string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a guardian. The guardian will no longer receive guardian |
| // notifications and the guardian will no longer be accessible via the API. |
| // This method returns the following error codes: * `PERMISSION_DENIED` if no |
| // user that matches the provided `student_id` is visible to the requesting |
| // user, if the requesting user is not permitted to manage guardians for the |
| // student identified by the `student_id`, if guardians are not enabled for the |
| // domain in question, or for other access errors. * `INVALID_ARGUMENT` if a |
| // `student_id` is specified, but its format cannot be recognized (it is not an |
| // email address, nor a `student_id` from the API). * `NOT_FOUND` if the |
| // requesting user is permitted to modify guardians for the requested |
| // `student_id`, but no `Guardian` record exists for that student with the |
| // provided `guardian_id`. |
| // |
| // - guardianId: The `id` field from a `Guardian`. |
| // - studentId: The student whose guardian is to be deleted. One of the |
| // following: * the numeric identifier for the user * the email address of |
| // the user * the string literal "me", indicating the requesting user. |
| func (r *UserProfilesGuardiansService) Delete(studentId string, guardianId string) *UserProfilesGuardiansDeleteCall { |
| c := &UserProfilesGuardiansDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| c.guardianId = guardianId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardiansDeleteCall) Fields(s ...googleapi.Field) *UserProfilesGuardiansDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardiansDeleteCall) Context(ctx context.Context) *UserProfilesGuardiansDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardiansDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardiansDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardians/{guardianId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| "guardianId": c.guardianId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardians.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Empty.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *UserProfilesGuardiansDeleteCall) Do(opts ...googleapi.CallOption) (*Empty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Empty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGuardiansGetCall struct { |
| s *Service |
| studentId string |
| guardianId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns a specific guardian. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if no user that matches the provided |
| // `student_id` is visible to the requesting user, if the requesting user is |
| // not permitted to view guardian information for the student identified by the |
| // `student_id`, if guardians are not enabled for the domain in question, or |
| // for other access errors. * `INVALID_ARGUMENT` if a `student_id` is |
| // specified, but its format cannot be recognized (it is not an email address, |
| // nor a `student_id` from the API, nor the literal string `me`). * `NOT_FOUND` |
| // if the requesting user is permitted to view guardians for the requested |
| // `student_id`, but no `Guardian` record exists for that student that matches |
| // the provided `guardian_id`. |
| // |
| // - guardianId: The `id` field from a `Guardian`. |
| // - studentId: The student whose guardian is being requested. One of the |
| // following: * the numeric identifier for the user * the email address of |
| // the user * the string literal "me", indicating the requesting user. |
| func (r *UserProfilesGuardiansService) Get(studentId string, guardianId string) *UserProfilesGuardiansGetCall { |
| c := &UserProfilesGuardiansGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| c.guardianId = guardianId |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardiansGetCall) Fields(s ...googleapi.Field) *UserProfilesGuardiansGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *UserProfilesGuardiansGetCall) IfNoneMatch(entityTag string) *UserProfilesGuardiansGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardiansGetCall) Context(ctx context.Context) *UserProfilesGuardiansGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardiansGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardiansGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardians/{guardianId}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| "guardianId": c.guardianId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardians.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Guardian.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *UserProfilesGuardiansGetCall) Do(opts ...googleapi.CallOption) (*Guardian, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Guardian{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type UserProfilesGuardiansListCall struct { |
| s *Service |
| studentId string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns a list of guardians that the requesting user is permitted to |
| // view, restricted to those that match the request. To list guardians for any |
| // student that the requesting user may view guardians for, use the literal |
| // character `-` for the student ID. This method returns the following error |
| // codes: * `PERMISSION_DENIED` if a `student_id` is specified, and the |
| // requesting user is not permitted to view guardian information for that |
| // student, if "-" is specified as the `student_id` and the user is not a |
| // domain administrator, if guardians are not enabled for the domain in |
| // question, if the `invited_email_address` filter is set by a user who is not |
| // a domain administrator, or for other access errors. * `INVALID_ARGUMENT` if |
| // a `student_id` is specified, but its format cannot be recognized (it is not |
| // an email address, nor a `student_id` from the API, nor the literal string |
| // `me`). May also be returned if an invalid `page_token` is provided. * |
| // `NOT_FOUND` if a `student_id` is specified, and its format can be |
| // recognized, but Classroom has no record of that student. |
| // |
| // - studentId: Filter results by the student who the guardian is linked to. |
| // 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 * the string literal "-", indicating that |
| // results should be returned for all students that the requesting user has |
| // access to view. |
| func (r *UserProfilesGuardiansService) List(studentId string) *UserProfilesGuardiansListCall { |
| c := &UserProfilesGuardiansListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.studentId = studentId |
| return c |
| } |
| |
| // InvitedEmailAddress sets the optional parameter "invitedEmailAddress": |
| // 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. |
| func (c *UserProfilesGuardiansListCall) InvitedEmailAddress(invitedEmailAddress string) *UserProfilesGuardiansListCall { |
| c.urlParams_.Set("invitedEmailAddress", invitedEmailAddress) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": 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. |
| func (c *UserProfilesGuardiansListCall) PageSize(pageSize int64) *UserProfilesGuardiansListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": 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. |
| func (c *UserProfilesGuardiansListCall) PageToken(pageToken string) *UserProfilesGuardiansListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *UserProfilesGuardiansListCall) Fields(s ...googleapi.Field) *UserProfilesGuardiansListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *UserProfilesGuardiansListCall) IfNoneMatch(entityTag string) *UserProfilesGuardiansListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *UserProfilesGuardiansListCall) Context(ctx context.Context) *UserProfilesGuardiansListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *UserProfilesGuardiansListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *UserProfilesGuardiansListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1/userProfiles/{studentId}/guardians") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "studentId": c.studentId, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "classroom.userProfiles.guardians.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListGuardiansResponse.ServerResponse.Header or (if a response was returned |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *UserProfilesGuardiansListCall) Do(opts ...googleapi.CallOption) (*ListGuardiansResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListGuardiansResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *UserProfilesGuardiansListCall) Pages(ctx context.Context, f func(*ListGuardiansResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |