Membuat dan memublikasikan label

Dokumen ini menjelaskan cara membuat dan memublikasikan label menggunakan Google Drive Labels API.

Membuat label

Untuk membuat label, gunakan metode create pada resource labels. Secara opsional, label dapat berisi satu atau beberapa objek Field.

Anda juga harus menentukan:

  • Objek LabelType.

  • Label title melalui objek Properties.

  • Parameter kueri useAdminAccess ditetapkan ke true untuk menggunakan kredensial administrator pengguna. Sebelum mengizinkan akses, server memverifikasi bahwa pengguna memiliki hak istimewa administrator Kelola Label Klasifikasi yang diperlukan.

Contoh kode berikut menunjukkan cara menggunakan metode create untuk membuat label standar administrator dengan judul tertentu dan satu SelectionOptions Field dengan dua objek Choice.

Python

label_body = {
    'labelType': 'ADMIN',
    'properties': {
        'title': 'TITLE'
    },
    'fields': [{
        'properties': {
            'displayName': 'DISPLAY_NAME'
        },
        'selectionOptions': {
            'listOptions': {},
            'choices': [{
                'properties': {
                    'displayName': 'CHOICE_1'
                }
            }, {
                'properties': {
                    'displayName': 'CHOICE_2'
                }
            }]
        }
    }]
}
response = service.labels().create(
    body=label_body, useAdminAccess=True).execute()

Node.js

var label = {
  'labelType': 'ADMIN',
  'properties': {
    'title': 'TITLE'
  },
  'fields': [{
    'properties': {
      'displayName': 'DISPLAY_NAME'
    },
    'selectionOptions': {
      'listOptions': {},
      'choices': [{
        'properties': {
          'displayName': 'CHOICE_1'
        }
      }, {
        'properties': {
          'displayName': 'CHOICE_2'
        }
      }]
    }
  }]
};

service.labels.create({
  requestBody: label,
  useAdminAccess: true
}, (err, res) => {
  if (err) return console.error('The API returned an error: ' + err);
  console.log(res);
});

Ganti kode berikut:

  • TITLE: Judul label.
  • DISPLAY_NAME: Nama tampilan kolom.
  • CHOICE_1: Pilihan pertama di kolom SelectionOptions.
  • CHOICE_2: Pilihan kedua di kolom SelectionOptions.

Label dibuat di UNPUBLISHED_DRAFT State. Label harus PUBLISHED agar dapat dilihat oleh pengguna dan digunakan pada file. Untuk mengetahui informasi selengkapnya, lihat Siklus proses label.

Batas label

Batas berikut berlaku saat membuat dan menerapkan label:

  • Label standar: 150
  • Kolom per label: 10

Menggunakan kolom dalam label

Tabel berikut menjelaskan jenis kolom yang dapat Anda tambahkan ke label, cara pengguna berinteraksi dengannya, serta pertimbangan dan batas formatnya:

Field Type Yang dapat dilakukan pengguna Batasan dan pertimbangan format
SelectionOptions Pilih satu atau beberapa opsi dari daftar Jumlah maksimum opsi yang didukung adalah 200
Jumlah pilihan maksimum untuk satu file adalah 10 seperti yang dikonfigurasi di ListOptions
IntegerOptions Masukkan nilai numerik Hanya bilangan bulat yang didukung
DateOptions Pilih tanggal kalender (Opsional) DateFormat dapat disetel ke "Panjang: Bulan DD, YYYY", atau "Singkat: MM/DD/YY"
TextOptions Memasukkan teks dalam kotak teks Jumlah karakter maksimum yang didukung adalah 100
UserOptions Pilih satu atau beberapa pengguna dari kontak Google Workspace. Jumlah maksimum entri pengguna untuk file adalah 10 seperti yang dikonfigurasi di ListOptions

Memublikasikan label

Drive Labels API memungkinkan Anda memublikasikan draf label setelah selesai. Label kemudian dapat dilihat oleh pengguna dan dapat diterapkan ke file.

Untuk memublikasikan label, gunakan metode publish pada resource labels dan tentukan:

  • Resource labels yang merepresentasikan setiap label. Objek ini berisi resource name dan id, yang merupakan ID unik global untuk label.

  • Parameter kueri useAdminAccess ditetapkan ke true untuk menggunakan kredensial administrator pengguna. Sebelum mengizinkan akses, server memverifikasi bahwa pengguna memiliki hak istimewa administrator Kelola Label Klasifikasi yang diperlukan.

Contoh kode berikut menunjukkan cara menggunakan id label untuk mengidentifikasi dan memublikasikan label yang benar.

Python

service.labels().publish(
    name='labels/ID',
    body={
        'useAdminAccess': True
    }
).execute()

Node.js

service.labels.publish({
  name: 'labels/ID',
  requestBody: {
    useAdminAccess: true
  }
}, (err, res) => {
  if (err) return console.error('The API returned an error: ' + err);
  console.log(res);
});

Ganti ID dengan ID label yang akan dipublikasikan.

Setelah dipublikasikan, label akan dipindahkan ke PUBLISHED State dan ID revisi label akan bertambah. Label tersebut kemudian dapat dilihat oleh pengguna dan dapat diterapkan ke file. Untuk mengetahui informasi selengkapnya, lihat Siklus proses label.

Batasan saat memublikasikan label

Saat Anda bersiap untuk memublikasikan label, perhatikan batasan berikut:

  • Setelah dipublikasikan, label tidak dapat kembali ke status draf aslinya. Untuk mengetahui informasi selengkapnya, lihat Siklus proses label.

  • Mempublikasikan label akan membuat revisi yang baru dipublikasikan. Semua revisi draf sebelumnya akan dihapus. Revisi yang dipublikasikan sebelumnya disimpan, tetapi dapat dihapus secara otomatis sesuai kebutuhan.

  • Setelah dipublikasikan, beberapa perubahan tidak lagi diizinkan. Umumnya, hal ini berarti perubahan apa pun yang membatalkan atau memicu batasan baru pada metadata yang ada terkait dengan label akan ditolak. Misalnya, perubahan berikut pada label tidak diizinkan setelah label dipublikasikan:

    • Label langsung dihapus. (Fitur ini harus dinonaktifkan terlebih dahulu, lalu dihapus.)
    • Field.FieldType telah diubah.
    • Perubahan pada opsi validasi Field menolak sesuatu yang sebelumnya diterima.
    • Pengurangan entri maksimum.