Topic
adalah label untuk mengelompokkan item streaming CourseWork
dan
CourseWorkMaterial
dalam kursus. Topic
biasanya digunakan
untuk mengategorikan item ini berdasarkan kesamaan, seperti minggu saat item ditetapkan
atau subjeknya. Pengguna dapat mengatur dan memfilter item forum secara visual di tampilan
Tugas Kelas pada UI Classroom.
Setiap Topic
diidentifikasi dengan ID unik yang ditetapkan oleh server. Resource Topic
juga berisi hal berikut:
name
: Nama tampilan yang ditampilkan di UI ClassroomupdateTime
: WaktuTopic
terakhir diperbaruicourseId
: ID kursus yang terkait denganTopic
Membuat Topik
Anda dapat membuat Topic
baru dalam kursus menggunakan metode topics.create()
,
seperti yang ditunjukkan dalam contoh berikut:
Java
Python
topic = {
"name": 'Example Topic'
}
response = service.courses().topics().create(
courseId=<course ID or alias>,
body=topic).execute()
print('Topic created: ', response['name'])
Kolom name
selalu wajib diisi dan harus berupa string tidak kosong. Semua kolom
lainnya bersifat opsional.
Mengambil detail Topik
Anda dapat mengambil Topic
tertentu menurut ID dengan metode topics.get()
, seperti
yang ditunjukkan dalam contoh berikut:
Java
Python
response = service.courses().topics().get(
courseId=<course ID or alias>,
id=<topic ID>).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
Gunakan metode topics.list()
untuk mengambil semua Topic
dalam kursus, seperti yang ditunjukkan
dalam contoh berikut:
Java
Python
topics = []
page_token = None
while True:
response = service.courses().topics().list(
pageToken=page_token,
pageSize=30,
courseId=<course ID or alias>).execute()
topics.extend(response.get('topic', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not topics:
print('No topics found.')
else:
print('Topics:')
for topic in topics:
print('{0} ({1})'.format(topic['name'], topic['topicId']))
Memperbarui Topik
Anda dapat memperbarui Topic
name
yang ada dengan metode topics.patch()
, seperti
yang ditunjukkan dalam contoh berikut:
Java
Python
topic = {
"name": "New Topic Name"
}
response = service.courses().topics().patch(
courseId=<course ID or alias>,
id=<topic ID>,
updateMask="name",
body=topic).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
Kolom Topic
id
dan updateTime
dibuat oleh server dan tidak dapat
diperbarui dengan API.
Menghapus Topik
Anda dapat menghapus Topic
yang ada dengan metode topics.delete()
, seperti yang ditunjukkan
dalam contoh berikut: