Создайте и опубликуйте этикетку.

В этом документе описывается, как создавать и публиковать этикетки с помощью API этикеток Google Drive.

Создать метку

Для создания метки используйте метод create ресурса labels . Метки могут содержать один или несколько объектов Field .

Также необходимо указать:

  • Объект LabelType .

  • title метки задается через объект Properties .

  • Параметр запроса useAdminAccess устанавливается в true , чтобы использовать учетные данные администратора пользователя. Прежде чем разрешить доступ, сервер проверяет, обладает ли пользователь необходимыми правами администратора по управлению метками классификации .

В приведенном ниже примере кода показано, как использовать метод create для создания стандартной административной метки с указанным заголовком и одним Field SelectionOptions , содержащим два объекта 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);
});

Замените следующее:

  • TITLE : Название этикетки.
  • DISPLAY_NAME : Отображаемое имя поля.
  • CHOICE_1 : Первый вариант в поле SelectionOptions .
  • CHOICE_2 : Второй вариант в поле SelectionOptions .

Метка создается в State UNPUBLISHED_DRAFT . Для того чтобы метка была видна пользователям и могла использоваться для файлов, она должна быть в PUBLISHED . Для получения дополнительной информации см. раздел «Жизненный цикл метки» .

Ограничения по маркировке

При создании и применении меток действуют следующие ограничения:

  • Стандартные этикетки: 150
  • Количество полей на метку: 10

Работа с полями в метках

В таблице ниже описаны типы полей, которые можно добавить в метку, способы взаимодействия пользователей с ними, а также особенности и ограничения форматирования:

Field Type Что могут делать пользователи Вопросы форматирования и ограничения
SelectionOptions Выберите один или несколько вариантов из списка. Максимальное количество поддерживаемых опций — 200.
Максимальное количество выделенных элементов для файла составляет 10, как указано в ListOptions
IntegerOptions Введите числовое значение Поддерживаются только целые числа.
DateOptions Выберите дату в календаре (Необязательно) Формат DateFormat можно установить как "Длинный: Месяц ДД, ГГГГ" или "Короткий: ММ/ДД/ГГ"
TextOptions Введите текст в текстовое поле Максимальное количество поддерживаемых символов — 100.
UserOptions Выберите одного или нескольких пользователей из списка контактов Google Workspace. Максимальное количество пользовательских записей для файла составляет 10, как указано в ListOptions

Опубликовать этикетку

API для создания меток дисков позволяет опубликовать черновой вариант метки после его завершения. После этого метка становится видимой для пользователей и может быть применена к файлам.

Для публикации метки используйте метод publish ресурса labels и укажите:

  • Ресурс labels , представляющий каждую метку. Он содержит name ресурса и id , который является глобально уникальным идентификатором для метки.

  • Параметр запроса useAdminAccess устанавливается в true , чтобы использовать учетные данные администратора пользователя. Прежде чем разрешить доступ, сервер проверяет, обладает ли пользователь необходимыми правами администратора по управлению метками классификации .

Приведённый ниже пример кода демонстрирует, как использовать id метки для идентификации и публикации правильной метки.

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);
});

Замените ID на идентификатор метки, которую нужно опубликовать.

После публикации метка переходит в State PUBLISHED , и её идентификатор ревизии увеличивается. После этого метка становится видимой для пользователей и может быть применена к файлам. Для получения дополнительной информации см. раздел «Жизненный цикл метки» .

Ограничения при публикации меток

При подготовке к публикации этикеток обратите внимание на следующие ограничения:

  • После публикации метка не может вернуться в исходное черновое состояние. Для получения дополнительной информации см. раздел «Жизненный цикл метки» .

  • Публикация метки создает новую опубликованную версию. Все предыдущие черновые версии удаляются. Ранее опубликованные версии сохраняются, но при необходимости могут быть автоматически удалены.

  • После публикации некоторые изменения становятся недопустимыми. Как правило, это означает, что любое изменение, которое аннулирует или вводит новые ограничения на существующие метаданные, связанные с меткой, отклоняется. Например, следующие изменения метки не допускаются после ее публикации:

    • Метка удаляется автоматически. (Сначала её необходимо отключить, а затем удалить.)
    • Изменено значение Field.FieldType .
    • Внесенные изменения в параметры проверки Field отклоняют ранее принятые значения.
    • Снижение максимального количества участников.