Supprimer un libellé d'un fichier

Cette page explique comment supprimer un libellé sur un seul fichier Google Drive.

Pour supprimer les métadonnées de libellé de fichier d'un fichier, utilisez la méthode files.modifyLabels. Le corps de la requête contient une instance de ModifyLabelsRequest permettant de modifier l'ensemble des libellés d'un fichier. La requête peut contenir plusieurs modifications appliquées de manière atomique. Autrement dit, si des modifications ne sont pas valides, l'ensemble de la mise à jour échoue et aucune des modifications (potentiellement dépendantes) n'est appliquée.

ModifyLabelsRequest contient une instance de LabelModification, qui est une modification d'un libellé sur un fichier. Il peut également contenir une instance de FieldModification, qui est une modification du champ d'un libellé. Pour supprimer le libellé du fichier, définissez FieldModification.removeLabel sur True.

Si la requête aboutit, le corps de la réponse contient les étiquettes ajoutées ou mises à jour par la requête. Elles existent dans un objet modifiedLabels de type Label.

Exemple

L'exemple de code suivant montre comment utiliser labelId pour supprimer tous les champs associés au libellé à l'aide de fileId. Par exemple, si un libellé contient à la fois des champs de texte et des champs utilisateur, la suppression d'un libellé entraîne la suppression à la fois des champs de texte et d'utilisateur qui lui sont associés. En revanche, le fait de désactiver le champ de texte le supprime du libellé, mais le champ de l'utilisateur reste inchangé. Pour en savoir plus, consultez Annuler la définition d'un champ de libellé dans un fichier.

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

Remplacez les éléments suivants :

  • LABEL_ID: labelId du libellé à modifier. Pour localiser les libellés d'un fichier, utilisez la méthode files.listLabels.
  • FILE_ID: fileId du fichier pour lequel les libellés sont modifiés.