Vous pouvez mettre à jour un seul libellé à l'aide de l'API Google Drive Labels en appliquant un ensemble de requêtes de mise à jour qui génèrent une nouvelle révision de brouillon. Par exemple, vous pouvez mettre à jour
un libellé existant
Properties (la
description de base du libellé) ou ajouter un nouveau
Field au libellé.
La mise à jour du libellé agit comme une mise à jour groupée, car la méthode accepte une liste d'objets
Request
de mise à jour. Elle effectue les mises à jour dans le même ordre que celui spécifié dans la requête par lot. Les mises à jour groupées sont appliquées de manière atomique. Autrement dit, si une requête du lot échoue, la mise à jour entière échoue et aucune des modifications (potentiellement dépendantes) n'est appliquée. Le libellé reste inchangé.
Si la mise à jour réussit, la révision de brouillon obtenue doit être publiée pour que les modifications puissent être utilisées avec n'importe quel élément Google Drive.
Mettre à jour des objets de libellé
Un libellé inclut de nombreux autres types d'objets qui peuvent être mis à jour, tels que :
- Libellé
Properties - Objets
Fieldet types de champs Choicede sélection etPropertiesde choix de sélection
Voici quelques-uns des nombreux objets qui contrôlent l'apparence et le fonctionnement d'un libellé.
Catégories d'opérations
Les opérations suivantes acceptées par la
delta méthode sur la
labels ressource peuvent être
regroupées dans les catégories générales suivantes :
| Catégorie | Description |
|---|---|
| Créer | Ajouter des objets. |
| Mettre à jour | Mettre à jour certaines propriétés d'un objet. |
| Activer | Activer des objets. |
| Désactiver | Désactiver des objets. |
| Supprimer | Supprimer des objets. |
Ces catégories sont utilisées dans la section suivante pour décrire le comportement d'opérations spécifiques.
Demandes de mises à jour
La méthode delta fonctionne en acceptant un ou plusieurs
Request
objets, chacun spécifiant un seul type de requête à effectuer. Il existe de nombreux types de requêtes. Voici une répartition des types de requêtes, regroupés en différentes catégories.
| Objet de la requête | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Propriétés du libellé |
|
||||||||||
| Champ |
|
||||||||||
| Choix de sélection |
|
||||||||||
Masques de champ
De nombreuses requêtes de type "Mettre à jour" et "Désactiver" nécessitent un
FieldMask.
Il s'agit d'une liste de champs que vous souhaitez mettre à jour, séparés par une virgule, tout en laissant les autres champs inchangés. Le masque est nécessaire pour s'assurer que seuls les champs que vous souhaitez modifier sont mis à jour. Vous devez spécifier au moins un champ.
Exemple
Pour mettre à jour un libellé, utilisez la
delta méthode sur la
labels ressource.
Vous devez également spécifier les éléments suivants :
Le paramètre de requête
useAdminAccessest défini surtruepour utiliser les identifiants d'administrateur de l'utilisateur. Avant d'autoriser l'accès, le serveur vérifie que l'utilisateur dispose des droits d'administrateur requis pour gérer les libellés de classification.Une
Requestqui spécifie les mises à jour applicables au libellé.Un
titlede libellé via l'Propertiesobjet.Un ou plusieurs
Fieldobjets.Une
labelsressource qui représente le libellé. Elle contient unnameet unid, qui est un identifiant unique global pour le libellé.Un objet
LabelViewen tant queLABEL_VIEW_FULLpour définir une vue de ressource appliquée aux réponses de libellé.LABEL_VIEW_FULLrenvoie tous les champs possibles.
L'exemple de code suivant montre comment utiliser l'id du libellé pour mettre à jour le libellé approprié :
Python
body = {
'useAdminAccess': True,
'requests': [
{
'updateLabel': {
'properties': {
'title': 'TITLE'
},
'updateMask': 'title'
}
},
{
'createField': {
'field': {
'properties': {
'displayName': 'DISPLAY_NAME'
},
'textOptions': {}
}
}
}
],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
body=body,
name='labels/ID'
).execute()
Node.js
var body = {
'useAdminAccess': true,
'requests': [
{
'updateLabel': {
'properties': {
'title': 'TITLE'
},
'updateMask': 'title'
}
},
{
'createField': {
'field': {
'properties': {
'displayName': 'DISPLAY_NAME'
},
'textOptions': {}
}
}
}
],
'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
name: 'labels/ID',
requestBody: body
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
Remplacez les éléments suivants :
- TITLE : titre du libellé.
- DISPLAY_NAME : nom à afficher du champ.
- ID : ID du libellé.
Le libellé, le champ ou le choix est mis à jour, l'ID de révision du libellé est incrémenté et le libellé est stocké dans une base de données en tant que libellé brouillon. Le libellé a le
State de PUBLISHED
avec
hasUnpublishedChanges
défini sur true ce qui signifie qu'il existe des modifications de brouillon, mais qu'elles ne sont pas disponibles pour les
utilisateurs. Le libellé mis à jour doit être PUBLISHED pour que les modifications soient visibles par les utilisateurs. Pour en savoir plus, consultez Cycle de vie des libellés.