Vous pouvez mettre à jour un seul libellé en appliquant un ensemble de requêtes de mise à jour qui génèrent une nouvelle révision brouillon. Par exemple, vous pouvez mettre à jour une propriété de libellé existante
(la description 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 du lot 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 brouillon résultante doit être publiée pour que les modifications puissent être utilisées avec n'importe quel élément Drive.
Mettre à jour des objets de libellé
Un libellé inclut de nombreux autres types d'objets qui peuvent être mis à jour, tels que :
- Propriétés du libellé
- Champs et types de champ
- Choix de sélection et propriétés des choix de sélection
Il s'agit de 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 compatibles avec la
labels.delta méthode 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 labels.delta fonctionne
en acceptant un ou plusieurs objets
Request, chacun
spécifiant un seul type de requête à effectuer. Il existe de nombreux types de requêtes différents. Voici une répartition des types de requêtes, regroupés en différentes catégories.
| Type de requête | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Propriétés du libellé |
|
||||||||||
| Champ |
|
||||||||||
| Choix de sélection |
|
||||||||||
Masques de champ
De nombreux types de requêtes "Mettre à jour" et "Désactiver" nécessitent un
FieldMask.
Il s'agit d'une liste de champs à mettre à jour, séparés par une virgule, les autres champs restant 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 collection.
Vous devez également spécifier les éléments suivants :
useAdminAccessesttruepour utiliser les identifiants d'administrateur de l'utilisateur. Le serveur vérifie que l'utilisateur est administrateur du libellé avant d'autoriser l'accès.Une
Requestqui spécifie les mises à jour applicables au libellé.Un
titlede libellé via lapropertyméthode.Un ou plusieurs
Field.Une ressource de libellé qui représente chaque libellé. Elle contient un
Nameet unIDde ressource, qui est un identifiant unique global pour le libellé.LabelViewestLABEL_VIEW_FULLpour définir la vue de ressource appliquée aux réponses de libellé.LABEL_VIEW_FULLrenvoie tous les champs possibles.
Cet exemple utilise l'ID pour mettre à jour le libellé approprié.
Python
body = {
'use_admin_access': True,
'requests': [{
'update_label': {
'properties': {
'title': 'TITLE'
},
'update_mask': {
'paths': ['title']
}
},
}, {
'create_field': {
'field': {
'properties': {
'display_name': 'DISPLAY_NAME'
},
'text_options': {}
}
}
}],
'view': 'LABEL_VIEW_FULL'
}
response = service.labels().delta(
body=body,
name='labels/ID').execute()
Node.js
var body = {
'use_admin_access': true,
'requests': [{
'update_label': {
'properties': {
'title': 'TITLE'
},
'update_mask': {
'paths': ['title']
}
},
}, {
'create_field': {
'field': {
'properties': {
'display_name': 'DISPLAY_NAME'
},
'text_options': {}
}
}
}],
'view': 'LABEL_VIEW_FULL'
};
service.labels.delta({
'resource': body,
'name': 'labels/ID'
}, (err, res) => {
if (err) return console.error('The API returned an error: ' + err);
console.log(res);
});
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=true, ce qui signifie qu'il existe des modifications brouillons, 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 la section Cycle de vie des libellés.