# Google Classroom API . courses . students

## Instance Methods

Adds a user as a student of a course.

Deletes a student of a course.

Returns a student of a course.

Returns a list of students of this course that the requester

Retrieves the next page of results.

### Method Details

`create(courseId, body, enrollmentCode=None, x__xgafv=None)`

    Adds a user as a student of a course.

    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
    * `ALREADY_EXISTS` if the user is already a student or teacher in the
    course.

    Args:
      courseId: string, Identifier of the course to create the student in.
    This identifier can be either the Classroom-assigned identifier or an
    alias. (required)
      body: object, The request body. (required)
        The object takes the form of:

    { # Student in a course.
        "profile": { # Global information for a user. # Global user information for the student.
            #
            # Read-only.
          "name": { # Details of the user's name. # Name of the user.
              #
              # Read-only.
            "fullName": "A String", # The user's full name formed by concatenating the first and last name
                # values.
                #
                # Read-only.
            "givenName": "A String", # The user's first name.
                #
                # Read-only.
            "familyName": "A String", # The user's last name.
                #
                # Read-only.
          },
          "photoUrl": "A String", # URL of user's profile photo.
              #
              # Read-only.
          "emailAddress": "A String", # Email address of the user.
              #
              # Read-only.
          "verifiedTeacher": True or False, # Represents whether a G Suite for Education user's domain administrator has
              # explicitly verified them as being a teacher. If the user is not a member of
              # a G Suite for Education domain, than this field will always be false.
              #
              # Read-only
          "id": "A String", # Identifier of the user.
              #
              # Read-only.
          "permissions": [ # Global permissions of the user.
              #
              # Read-only.
            { # Global user permission description.
              "permission": "A String", # Permission value.
            },
          ],
        },
        "courseId": "A String", # Identifier of the course.
            #
            # Read-only.
        "studentWorkFolder": { # Representation of a Google Drive folder. # Information about a Drive Folder for this student's work in this course.
            # Only visible to the student and domain administrators.
            #
            # Read-only.
          "alternateLink": "A String", # URL that can be used to access the Drive folder.
              #
              # Read-only.
          "id": "A String", # Drive API resource ID.
          "title": "A String", # Title of the Drive folder.
              #
              # Read-only.
        },
        "userId": "A String", # 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
      }

      enrollmentCode: string, 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Student in a course.
          "profile": { # Global information for a user. # Global user information for the student.
              #
              # Read-only.
            "name": { # Details of the user's name. # Name of the user.
                #
                # Read-only.
              "fullName": "A String", # The user's full name formed by concatenating the first and last name
                  # values.
                  #
                  # Read-only.
              "givenName": "A String", # The user's first name.
                  #
                  # Read-only.
              "familyName": "A String", # The user's last name.
                  #
                  # Read-only.
            },
            "photoUrl": "A String", # URL of user's profile photo.
                #
                # Read-only.
            "emailAddress": "A String", # Email address of the user.
                #
                # Read-only.
            "verifiedTeacher": True or False, # Represents whether a G Suite for Education user's domain administrator has
                # explicitly verified them as being a teacher. If the user is not a member of
                # a G Suite for Education domain, than this field will always be false.
                #
                # Read-only
            "id": "A String", # Identifier of the user.
                #
                # Read-only.
            "permissions": [ # Global permissions of the user.
                #
                # Read-only.
              { # Global user permission description.
                "permission": "A String", # Permission value.
              },
            ],
          },
          "courseId": "A String", # Identifier of the course.
              #
              # Read-only.
          "studentWorkFolder": { # Representation of a Google Drive folder. # Information about a Drive Folder for this student's work in this course.
              # Only visible to the student and domain administrators.
              #
              # Read-only.
            "alternateLink": "A String", # URL that can be used to access the Drive folder.
                #
                # Read-only.
            "id": "A String", # Drive API resource ID.
            "title": "A String", # Title of the Drive folder.
                #
                # Read-only.
          },
          "userId": "A String", # 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
        }

`delete(courseId, userId, x__xgafv=None)`

    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.

    Args:
      courseId: string, Identifier of the course.
    This identifier can be either the Classroom-assigned identifier or an
    alias. (required)
      userId: string, 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 (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated
          # empty messages in your APIs. A typical example is to use it as the request
          # or the response type of an API method. For instance:
          #
          #     service Foo {
          #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
          #     }
          #
          # The JSON representation for `Empty` is empty JSON object `{}`.
      }

`get(courseId, userId, x__xgafv=None)`

    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.

    Args:
      courseId: string, Identifier of the course.
    This identifier can be either the Classroom-assigned identifier or an
    alias. (required)
      userId: string, 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 (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Student in a course.
          "profile": { # Global information for a user. # Global user information for the student.
              #
              # Read-only.
            "name": { # Details of the user's name. # Name of the user.
                #
                # Read-only.
              "fullName": "A String", # The user's full name formed by concatenating the first and last name
                  # values.
                  #
                  # Read-only.
              "givenName": "A String", # The user's first name.
                  #
                  # Read-only.
              "familyName": "A String", # The user's last name.
                  #
                  # Read-only.
            },
            "photoUrl": "A String", # URL of user's profile photo.
                #
                # Read-only.
            "emailAddress": "A String", # Email address of the user.
                #
                # Read-only.
            "verifiedTeacher": True or False, # Represents whether a G Suite for Education user's domain administrator has
                # explicitly verified them as being a teacher. If the user is not a member of
                # a G Suite for Education domain, than this field will always be false.
                #
                # Read-only
            "id": "A String", # Identifier of the user.
                #
                # Read-only.
            "permissions": [ # Global permissions of the user.
                #
                # Read-only.
              { # Global user permission description.
                "permission": "A String", # Permission value.
              },
            ],
          },
          "courseId": "A String", # Identifier of the course.
              #
              # Read-only.
          "studentWorkFolder": { # Representation of a Google Drive folder. # Information about a Drive Folder for this student's work in this course.
              # Only visible to the student and domain administrators.
              #
              # Read-only.
            "alternateLink": "A String", # URL that can be used to access the Drive folder.
                #
                # Read-only.
            "id": "A String", # Drive API resource ID.
            "title": "A String", # Title of the Drive folder.
                #
                # Read-only.
          },
          "userId": "A String", # 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
        }

`list(courseId, pageSize=None, pageToken=None, x__xgafv=None)`

    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.

    Args:
      courseId: string, Identifier of the course.
    This identifier can be either the Classroom-assigned identifier or an
    alias. (required)
      pageSize: integer, Maximum number of items to return. Zero means no maximum.

    The server may return fewer than the specified number of results.
      pageToken: string, 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.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response when listing students.
        "students": [ # Students who match the list request.
          { # Student in a course.
              "profile": { # Global information for a user. # Global user information for the student.
                  #
                  # Read-only.
                "name": { # Details of the user's name. # Name of the user.
                    #
                    # Read-only.
                  "fullName": "A String", # The user's full name formed by concatenating the first and last name
                      # values.
                      #
                      # Read-only.
                  "givenName": "A String", # The user's first name.
                      #
                      # Read-only.
                  "familyName": "A String", # The user's last name.
                      #
                      # Read-only.
                },
                "photoUrl": "A String", # URL of user's profile photo.
                    #
                    # Read-only.
                "emailAddress": "A String", # Email address of the user.
                    #
                    # Read-only.
                "verifiedTeacher": True or False, # Represents whether a G Suite for Education user's domain administrator has
                    # explicitly verified them as being a teacher. If the user is not a member of
                    # a G Suite for Education domain, than this field will always be false.
                    #
                    # Read-only
                "id": "A String", # Identifier of the user.
                    #
                    # Read-only.
                "permissions": [ # Global permissions of the user.
                    #
                    # Read-only.
                  { # Global user permission description.
                    "permission": "A String", # Permission value.
                  },
                ],
              },
              "courseId": "A String", # Identifier of the course.
                  #
                  # Read-only.
              "studentWorkFolder": { # Representation of a Google Drive folder. # Information about a Drive Folder for this student's work in this course.
                  # Only visible to the student and domain administrators.
                  #
                  # Read-only.
                "alternateLink": "A String", # URL that can be used to access the Drive folder.
                    #
                    # Read-only.
                "id": "A String", # Drive API resource ID.
                "title": "A String", # Title of the Drive folder.
                    #
                    # Read-only.
              },
              "userId": "A String", # 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
            },
        ],
        "nextPageToken": "A String", # Token identifying the next page of results to return. If empty, no further
            # results are available.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.