Referensi wali mewakili pengguna, seperti orang tua, yang menerima informasi tentang kursus dan tugas siswa. Wali, yang biasanya bukan anggota domain Classroom siswa, harus diundang menggunakan alamat email mereka untuk menjadi wali.
Undangan ini membuat
resource GuardianInvite
dengan status PENDING
. Kemudian, pengguna akan menerima email yang memintanya untuk menerima undangan. Jika alamat email tidak dikaitkan dengan Akun Google, pengguna akan diminta untuk membuat akun sebelum menerima undangan.
Meskipun undangan memiliki status PENDING
, pengguna dapat menerima undangan, yang membuat resource Guardian dan menandai Guardian meningkatkan status COMPLETED
. Undangan juga dapat menjadi COMPLETED
jika masa berlakunya sudah berakhir, atau jika pengguna yang diberi otorisasi membatalkan undangan (misalnya, menggunakan metode PatchGuardianInvitation
). Hubungan Wali juga dapat terputus oleh
wali, pengajar Classroom, atau administrator, menggunakan antarmuka pengguna
Classroom atau metode DeleteGuardian
.
Siapa yang dapat mengelola wali
Tabel berikut menjelaskan tindakan yang dapat dilakukan sehubungan dengan wali, sesuai dengan jenis pengguna yang saat ini diautentikasi:
Cakupan
Ada tiga cakupan yang memungkinkan Anda mengelola wali:
- https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly memungkinkan Anda melihat Wali milik pengguna.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly, Anda dapat melihat Wali dan Wali Invites untuk siswa yang diajar atau dikelola oleh pengguna.
- https://www.googleapis.com/auth/classroom.guardianlinks.students memungkinkan Anda melihat dan mengubah Undangan Wali dan Wali untuk siswa yang diajar atau dikelola oleh pengguna.
Tindakan umum
Bagian ini menjelaskan beberapa tindakan umum wali yang mungkin ingin Anda lakukan menggunakan Google Classroom API.
Buat undangan wali
Contoh berikut menunjukkan cara membuat undangan wali menggunakan metode
userProfiles.guardianInvitations.create()
:
Java
Python
guardianInvitation = {
'invitedEmailAddress': 'guardian@gmail.com',
}
guardianInvitation = service.userProfiles().guardianInvitations().create(
studentId='student@mydomain.edu',
body=guardianInvitation).execute()
print("Invitation created with id: {0}".format(guardianInvitation.get('invitationId')))
Hasilnya mencakup ID yang ditetapkan server yang dapat digunakan untuk merujuk ke Guardian invitation.
Membatalkan undangan wali
Untuk membatalkan undangan, ubah status undangan dari PENDING
ke
COMPLETE
dengan memanggil metode userProfiles.guardianInvitations.patch()
.
Perhatikan bahwa saat ini ini adalah satu-satunya cara untuk menghapus undangan.
Java
Python
guardian_invite = {
'state': 'COMPLETE'
}
guardianInvitation = service.userProfiles().guardianInvitations().patch(
studentId='student@mydomain.edu',
invitationId=1234, # Replace with the invitation ID of the invitation you want to cancel
updateMask='state',
body=guardianInvitation).execute()
Membuat daftar undangan untuk siswa tertentu
Anda bisa mendapatkan daftar semua undangan yang telah dikirim untuk siswa
tertentu menggunakan metode userProfiles.guardianInvitations.list()
:
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardianInvitations().list(
studentId='student@mydomain.edu').execute()
guardian_invites.extend(response.get('guardian_invites', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not courses:
print('No guardians invited for this {0}.'.format(response.get('studentId')))
else:
print('Guardian Invite:')
for guardian in guardian_invites:
print('An invite was sent to '.format(guardian.get('id'),
guardian.get('guardianId')))
Secara default, hanya PENDING
undangan yang akan ditampilkan. Sebagai administrator
domain, Anda juga dapat mengambil undangan dalam status COMPLETED
dengan
memberikan parameter status.
Menampilkan daftar wali yang aktif
Jika ingin menentukan pengguna mana yang merupakan wali aktif untuk siswa
tertentu, Anda dapat menggunakan metode userProfiles.guardians.list()
. Wali aktif adalah wali yang telah menerima undangan email.
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardians().list(studentId='student@mydomain.edu').execute()
guardian_invites.extend(response.get('guardian_invites', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not courses:
print('No guardians invited for this {0}.'.format(response.get('studentId')))
else:
print('Guardian Invite:')
for guardian in guardian_invites:
print('An invite was sent to '.format(guardian.get('id'),
guardian.get('guardianId')))
Hapus wali
Anda juga dapat menghapus wali dari siswa menggunakan metode
userProfiles.guardians.delete()
:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()