Memperbarui label

Anda dapat memperbarui satu label dengan menerapkan serangkaian permintaan pembaruan 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 mengambil daftar objek Request pembaruan. Tindakan ini akan melakukan pembaruan sesuai dengan urutan yang sama yang ditentukan dalam permintaan batch. Update dalam update batch diterapkan secara atomik. Artinya, jika ada permintaan dalam batch yang gagal, seluruh update akan gagal dan tidak ada perubahan (yang berpotensi bergantung) yang diterapkan. Label tidak diubah.

Jika pembaruan 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 Pemilihan dan Properti Pilihan Pemilihan

Berikut adalah beberapa dari banyak objek yang mengontrol tampilan dan operasi label.

Kategori operasi

Operasi berikut yang didukung oleh metode labels.delta dapat dikelompokkan ke dalam kategori luas berikut:

Kategori Deskripsi
BerkreasiMenambahkan objek.
UpdateMemperbarui properti tertentu dari objek.
AktifkanMengaktifkan objek.
NonaktifkanMenonaktifkan objek.
HapusMenghapus 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. Berikut adalah perincian jenis permintaan, yang dikelompokkan ke dalam berbagai kategori.

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 minimal satu kolom.

Contoh

Untuk memperbarui label, gunakan metode delta pada koleksi labels.

Anda juga harus menentukan:

  • useAdminAccess adalah true untuk menggunakan kredensial administrator pengguna. Server akan memverifikasi bahwa pengguna adalah admin untuk label sebelum mengizinkan akses.

  • Request yang menentukan update yang berlaku untuk label.

  • Label title melalui metode property.

  • Satu atau beberapa Field.

  • Resource label yang mewakili setiap label. File ini berisi resource Name dan ID, yang merupakan ID unik global untuk label.

  • LabelView adalah LABEL_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.

PythonNode.js
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()
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 label draf. Label memiliki State dari PUBLISHED dengan hasUnpublishedChanges=true yang berarti ada perubahan draf, tetapi tidak tersedia untuk pengguna. Label yang diperbarui harus PUBLISHED sebelum perubahan terlihat oleh pengguna. Untuk mengetahui informasi selengkapnya, lihat Siklus proses label.