# Google Classroom API . userProfiles . guardianInvitations

## Instance Methods

Close httplib2 connections.

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.

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.

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.

Retrieves the next page of results.

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.

### Method Details

`close()`

    Close httplib2 connections.

`create(studentId, body=None, x__xgafv=None)`

    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.

    Args:
      studentId: string, ID of the student (in standard format) (required)
      body: object, The request body.
        The object takes the form of:

    { # An invitation to become the guardian of a specified user, sent to a specified email address.
      "creationTime": "A String", # The time that this invitation was created. Read-only.
      "invitationId": "A String", # Unique identifier for this invitation. Read-only.
      "invitedEmailAddress": "A String", # Email address that the invitation was sent to. This field is only visible to domain administrators.
      "state": "A String", # The state that this invitation is in.
      "studentId": "A String", # ID of the student (in standard format)
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An invitation to become the guardian of a specified user, sent to a specified email address.
      "creationTime": "A String", # The time that this invitation was created. Read-only.
      "invitationId": "A String", # Unique identifier for this invitation. Read-only.
      "invitedEmailAddress": "A String", # Email address that the invitation was sent to. This field is only visible to domain administrators.
      "state": "A String", # The state that this invitation is in.
      "studentId": "A String", # ID of the student (in standard format)
    }

`get(studentId, invitationId, x__xgafv=None)`

    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.

    Args:
      studentId: string, The ID of the student whose guardian invitation is being requested. (required)
      invitationId: string, The `id` field of the `GuardianInvitation` being requested. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # An invitation to become the guardian of a specified user, sent to a specified email address.
      "creationTime": "A String", # The time that this invitation was created. Read-only.
      "invitationId": "A String", # Unique identifier for this invitation. Read-only.
      "invitedEmailAddress": "A String", # Email address that the invitation was sent to. This field is only visible to domain administrators.
      "state": "A String", # The state that this invitation is in.
      "studentId": "A String", # ID of the student (in standard format)
    }

`list(studentId, invitedEmailAddress=None, pageSize=None, pageToken=None, states=None, x__xgafv=None)`

    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.

    Args:
      studentId: string, 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. (required)
      invitedEmailAddress: string, If specified, only results with the specified `invited_email_address` are returned.
      pageSize: integer, 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.
      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.
      states: string, If specified, only results with the specified `state` values are returned. Otherwise, results with a `state` of `PENDING` are returned. (repeated)
        Allowed 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.
      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 guardian invitations.
      "guardianInvitations": [ # Guardian invitations that matched the list request.
        { # An invitation to become the guardian of a specified user, sent to a specified email address.
          "creationTime": "A String", # The time that this invitation was created. Read-only.
          "invitationId": "A String", # Unique identifier for this invitation. Read-only.
          "invitedEmailAddress": "A String", # Email address that the invitation was sent to. This field is only visible to domain administrators.
          "state": "A String", # The state that this invitation is in.
          "studentId": "A String", # ID of the student (in standard format)
        },
      ],
      "nextPageToken": "A String", # Token identifying the next page of results to return. If empty, no further results are available.
    }

`list_next()`

    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.

`patch(studentId, invitationId, body=None, updateMask=None, x__xgafv=None)`

    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.

    Args:
      studentId: string, The ID of the student whose guardian invitation is to be modified. (required)
      invitationId: string, The `id` field of the `GuardianInvitation` to be modified. (required)
      body: object, The request body.
        The object takes the form of:

    { # An invitation to become the guardian of a specified user, sent to a specified email address.
      "creationTime": "A String", # The time that this invitation was created. Read-only.
      "invitationId": "A String", # Unique identifier for this invitation. Read-only.
      "invitedEmailAddress": "A String", # Email address that the invitation was sent to. This field is only visible to domain administrators.
      "state": "A String", # The state that this invitation is in.
      "studentId": "A String", # ID of the student (in standard format)
    }

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

    Returns:
      An object of the form:

        { # An invitation to become the guardian of a specified user, sent to a specified email address.
      "creationTime": "A String", # The time that this invitation was created. Read-only.
      "invitationId": "A String", # Unique identifier for this invitation. Read-only.
      "invitedEmailAddress": "A String", # Email address that the invitation was sent to. This field is only visible to domain administrators.
      "state": "A String", # The state that this invitation is in.
      "studentId": "A String", # ID of the student (in standard format)
    }