Anda dapat memperbarui satu label 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.
Pembaruan label berfungsi sebagai pembaruan batch karena metode ini menggunakan daftar objek
Request pembaruan. API ini
melakukan update sesuai dengan urutan yang sama yang ditentukan dalam permintaan batch. Pembaruan dalam pembaruan batch diterapkan secara atomik. Artinya, jika ada permintaan dalam batch yang tidak berhasil, seluruh update akan gagal dan tidak ada perubahan (yang mungkin bergantung) yang diterapkan. Label tidak berubah.
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 Seleksi dan Properti Pilihan Seleksi
Berikut adalah beberapa dari banyak objek yang mengontrol tampilan dan pengoperasian label.
Kategori operasi
Operasi berikut yang didukung oleh metode
labels.delta dapat
dikelompokkan ke dalam kategori luas berikut:
| Kategori | Deskripsi |
|---|---|
| Berkreasi | Tambahkan objek. |
| Update | Memperbarui properti tertentu dari suatu objek. |
| Aktifkan | Aktifkan objek. |
| Disable | Menonaktifkan objek. |
| Hapus | Menghapus objek. |
Kategori ini digunakan di bagian berikutnya untuk menjelaskan perilaku operasi tertentu.
Permintaan pembaruan
Metode labels.delta berfungsi
dengan mengambil satu atau beberapa
objek Request, yang masing-masing
menentukan satu jenis permintaan yang akan dilakukan. Ada banyak jenis permintaan yang berbeda. Berikut perincian jenis permintaan, yang dikelompokkan ke dalam berbagai kategori.
| Jenis permintaan | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Properti Label |
|
||||||||||
| Kolom |
|
||||||||||
| Pilihan Seleksi |
|
||||||||||
Mask kolom
Banyak permintaan jenis "Perbarui" dan "Nonaktifkan" memerlukan
FieldMask.
Ini adalah daftar kolom yang dibatasi koma yang ingin Anda perbarui dan tidak 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:
useAdminAccessadalahtrueuntuk menggunakan kredensial administrator pengguna. Server memverifikasi bahwa pengguna adalah admin untuk label sebelum mengizinkan akses.Requestyang menentukan pembaruan yang berlaku untuk label.Label
titlemelalui metodeproperty.Satu atau beberapa
Field.Label resource yang merepresentasikan setiap label. Objek ini berisi
NamedanIDresource, yang merupakan ID unik global untuk label.LabelViewadalahLABEL_VIEW_FULLuntuk menetapkan tampilan Resource yang diterapkan ke respons label.LABEL_VIEW_FULLmenampilkan semua kolom yang mungkin.
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 diperbarui, ID revisi label bertambah,
dan label disimpan dalam database sebagai draf label. Label memiliki
State PUBLISHED dengan
hasUnpublishedChanges=true yang berarti ada perubahan draf, tetapi perubahan tersebut tidak
tersedia bagi pengguna. Label yang diperbarui harus PUBLISHED sebelum perubahan
dapat dilihat oleh pengguna. Untuk mengetahui informasi selengkapnya, lihat Siklus proses
label.