Anda dapat memperbarui label tunggal dengan menerapkan serangkaian permintaan update yang menghasilkan revisi draf baru. Misalnya, Anda dapat memperbarui properti label yang ada (deskripsi label) atau menambahkan Field
baru ke label.
Update label berfungsi sebagai update batch karena metode ini mengambil daftar objek
Request
update. Fitur ini
membuat update sesuai dengan urutan yang sama yang ditentukan dalam permintaan batch. Update dalam batch update diterapkan secara atomik. Artinya, jika ada permintaan dalam batch yang tidak berhasil, seluruh update akan gagal dan tidak ada satu pun perubahan (yang mungkin bergantung padanya) yang akan diterapkan. Label tidak diubah.
Jika update berhasil, revisi draf yang dihasilkan harus dipublikasikan sebelum perubahan dapat digunakan dengan item Drive apa pun.
Memperbarui objek label
Label mencakup banyak jenis objek lain yang dapat diperbarui, seperti:
- Properti Label
- Kolom dan Jenis Kolom
- Pilihan Pilihan dan Properti Pilihan Pilihan
Ini adalah sebagian dari banyak objek yang mengontrol tampilan dan pengoperasian label.
Kategori operasi
Operasi berikut yang didukung oleh
metode labels.delta
dapat
dikelompokkan ke dalam kategori yang luas berikut:
Kategori | Deskripsi |
---|---|
Buat | Menambahkan objek. |
Update | Memperbarui properti tertentu dari suatu objek. |
Aktifkan | Aktifkan objek. |
Nonaktifkan | Nonaktifkan objek. |
Hapus | Hapus objek. |
Kategori ini digunakan di bagian berikutnya untuk menjelaskan perilaku operasi tertentu.
Perbarui permintaan
Metode labels.delta
bekerja
dengan mengambil satu atau beberapa
objek Request, masing-masing
menentukan satu jenis permintaan untuk dijalankan. Ada banyak jenis
permintaan yang berbeda. Berikut adalah perincian jenis permintaan, yang dikelompokkan ke dalam berbagai kategori.
Jenis permintaan | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Properti Label |
|
||||||||||
Kolom |
|
||||||||||
Pilihan |
|
Mask kolom
Banyak permintaan jenis "Update" dan "Disable" memerlukan
FieldMask
.
Ini adalah daftar kolom yang dipisahkan koma yang ingin Anda perbarui, tanpa mengubah kolom lainnya. Mask diperlukan untuk memastikan hanya kolom yang ingin Anda edit yang diperbarui. Anda harus menentukan setidaknya satu kolom.
Contoh
Untuk memperbarui label, gunakan
metode delta
pada
koleksi labels
.
Anda juga harus menentukan:
useAdminAccess
adalahtrue
untuk menggunakan kredensial administrator pengguna. Server memverifikasi bahwa pengguna adalah admin untuk label sebelum mengizinkan akses.Request
yang menentukan pembaruan yang berlaku untuk label.Label
title
melalui metodeproperty
.Satu atau beberapa
Field
.Resource label yang mewakili setiap label. Class ini berisi resource
Name
danID
, yang merupakan ID unik global untuk label.LabelView
adalahLABEL_VIEW_FULL
untuk menetapkan tampilan Resource yang diterapkan ke respons label.LABEL_VIEW_FULL
menampilkan semua kolom yang memungkinkan.
Contoh ini menggunakan ID
untuk memperbarui label yang benar.
Python
body = {
'use_admin_access': True,
'requests': [{
'update_label': {
'properties': {
'title': 'TITLE'
},
'update_mask': {
'paths': ['title']
}
},
}, {
'create_field': {
'field': {
'properties': {
'display_name': 'DISPLAY_NAME'
},
'text_options': {}
}
}
}],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
body=body,
name='labels/ID').execute()
Node.js
var body = {
'use_admin_access': true,
'requests': [{
'update_label': {
'properties': {
'title': 'TITLE'
},
'update_mask': {
'paths': ['title']
}
},
}, {
'create_field': {
'field': {
'properties': {
'display_name': 'DISPLAY_NAME'
},
'text_options': {}
}
}
}],
'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
'resource': body,
'name': 'labels/ID'
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
Label, kolom, atau pilihan akan diperbarui, ID revisi label akan bertambah, dan label disimpan di dalam database sebagai label draf. Label memiliki
State
dari PUBLISHED
dengan
hasUnpublishedChanges=true
yang berarti ada perubahan draf, tetapi perubahan tersebut tidak
tersedia bagi pengguna. Label yang diperbarui harus PUBLISHED
sebelum perubahan
terlihat oleh pengguna. Untuk informasi selengkapnya, lihat Siklus proses label.