Cómo quitar una etiqueta de un archivo

En esta página, se describe cómo quitar una etiqueta de un solo archivo de Google Drive.

Para quitar los metadatos de etiquetas de archivo de un archivo, usa el método files.modifyLabels. El cuerpo de la solicitud contiene una instancia de ModifyLabelsRequest para modificar el conjunto de etiquetas de un archivo. La solicitud puede contener varias modificaciones que se aplican de forma atómica. Es decir, si alguna modificación no es válida, no se aplicará toda la actualización y no se aplicará ninguno de los cambios (potencialmente dependientes).

ModifyLabelsRequest contiene una instancia de LabelModification, que es una modificación de una etiqueta de un archivo. También puede contener una instancia de FieldModification, que es una modificación del campo de una etiqueta. Para quitar la etiqueta del archivo, configura FieldModification.removeLabel como True.

Si se ejecuta de forma correcta, el cuerpo de la respuesta contiene las etiquetas que la solicitud agregó o actualizó. Estos existen en un objeto modifiedLabels de tipo Label.

Ejemplo

En la siguiente muestra de código, se indica cómo usar labelId para quitar todos los campos asociados con la etiqueta mediante fileId. Por ejemplo, si una etiqueta contiene campos de texto y de usuario, si quitas una etiqueta, se borrarán ambos, los campos de texto y usuario asociados con la etiqueta. Por otro lado, si anulas la configuración del campo de texto, este se quita de la etiqueta, pero no se modifica el campo de usuario. Para obtener más información, consulta Anula la configuración de un campo de etiqueta en un archivo.

Java

ModifyLabelsRequest modifyLabelsRequest =
  new ModifyLabelsRequest()
      .setLabelModifications(
          ImmutableList.of(
              new LabelModification()
                .setLabelId("LABEL_ID")
                .setRemoveLabel(true)));

ModifyLabelsResponse modifyLabelsResponse = driveService.files().modifyLabels("FILE_ID", modifyLabelsRequest).execute();

Python

label_modification = {'labelId':'LABEL_ID', 'removeLabel': True]}

modified_labels = drive_service.files().modifyLabels(fileId="FILE_ID", body = {'labelModifications' : [label_modification]}).execute();

Node.js

/**
* Remove a label on a Drive file
* @return{obj} updated label data
**/
async function removeLabel() {
  // Get credentials and build service
  // TODO (developer) - Use appropriate auth mechanism for your app

  const {GoogleAuth} = require('google-auth-library');
  const {google} = require('googleapis');

  const auth = new GoogleAuth({scopes: 'https://www.googleapis.com/auth/drive'});
  const service = google.drive({version: 'v3', auth});
  const labelModification = {
    'labelId': 'LABEL_ID',
    'removeLabel': True,
  };
  const labelModificationRequest = {
    'labelModifications': [labelModification],
  };
  try {
    const updateResponse = await service.files.modifyLabels({
      fileId: 'FILE_ID',
      resource: labelModificationRequest,
    });
    return updateResponse;
  } catch (err) {
    // TODO (developer) - Handle error
    throw err;
  }

Reemplaza lo siguiente:

  • LABEL_ID: El labelId de la etiqueta que se modificará. Para ubicar las etiquetas en un archivo, usa el método files.listLabels.
  • FILE_ID: El fileId del archivo para el que se modifican las etiquetas.