Puoi aggiornare una singola etichetta applicando un insieme di richieste di aggiornamento che generano
una nuova revisione bozza. Ad esempio, puoi aggiornare una proprietà
esistente (la descrizione
dell'etichetta) o puoi aggiungere un nuovo
Field
all'etichetta.
L'aggiornamento dell'etichetta funge da aggiornamento batch poiché il metodo accetta un elenco di oggetti di aggiornamento
Request
. Esegue gli aggiornamenti nello stesso ordine specificato nella richiesta batch. Gli
aggiornamenti nell'aggiornamento batch vengono applicati in modo atomico. ovvero, se una richiesta nel batch non va a buon fine, l'intero aggiornamento non va a buon fine e nessuna delle modifiche (potenzialmente dipendenti) viene applicata. L'etichetta rimane invariata.
Se l'aggiornamento ha esito positivo, la revisione della bozza risultante deve essere pubblicata prima che le modifiche possano essere utilizzate con qualsiasi elemento di Drive.
Aggiorna gli oggetti etichetta
Un'etichetta include molti altri tipi di oggetti che possono essere aggiornati, ad esempio:
- Proprietà etichetta
- Campi e tipi di campo
- Scelte di selezione e proprietà delle scelte di selezione
Questi sono alcuni dei molti oggetti che controllano l'aspetto e il funzionamento di un'etichetta.
Categorie di operazioni
Le seguenti operazioni supportate dal metodo
labels.delta
possono essere
raggruppate nelle seguenti categorie generali:
Categoria | Descrizione |
---|---|
Crea | Aggiungi oggetti. |
Aggiorna | Aggiorna determinate proprietà di un oggetto. |
Attiva | Attiva gli oggetti. |
Disabilita | Disattiva gli oggetti. |
Elimina | Rimuovi oggetti. |
Queste categorie vengono utilizzate nella sezione successiva per descrivere il comportamento di operazioni specifiche.
Richieste di aggiornamento
Il metodo labels.delta
funziona
prendendo uno o più
oggetti Request, ognuno
dei quali specifica un singolo tipo di richiesta da eseguire. Esistono molti tipi diversi
di richieste. Ecco una suddivisione dei tipi di richieste, raggruppate in
diverse categorie.
Tipo di richiesta | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Proprietà etichetta |
|
||||||||||
Campo |
|
||||||||||
Scelta di selezione |
|
Maschere dei campi
Molte richieste di tipo "Aggiorna" e "Disattiva" richiedono un
FieldMask
.
Si tratta di un elenco delimitato da virgole dei campi che vuoi aggiornare lasciando invariati gli altri campi. La maschera è necessaria per assicurarsi che vengano aggiornati solo i campi che
vuoi modificare. Devi specificare almeno un campo.
Esempio
Per aggiornare un'etichetta, utilizza il
metodo delta
nella
raccolta labels
.
Devi inoltre specificare:
useAdminAccess
ètrue
per utilizzare le credenziali di amministratore dell'utente. Il server verifica che l'utente sia un amministratore dell'etichetta prima di consentire l'accesso.Un
Request
che specifica gli aggiornamenti applicabili all'etichetta.Un'etichetta
title
tramite il metodoproperty
.Uno o più
Field
.Una risorsa Etichetta che rappresenta ogni etichetta. Contiene una risorsa
Name
eID
, che è un identificatore univoco globale per l'etichetta.LabelView
èLABEL_VIEW_FULL
per impostare la visualizzazione Risorsa applicata alle risposte delle etichette.LABEL_VIEW_FULL
restituisce tutti i campi possibili.
Questo esempio utilizza ID
per aggiornare l'etichetta corretta.
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);
});
L'etichetta, il campo o la scelta vengono aggiornati, l'ID revisione dell'etichetta viene incrementato
e l'etichetta viene archiviata in un database come bozza. L'etichetta ha lo
State
di PUBLISHED
con
hasUnpublishedChanges=true
, il che significa che sono presenti modifiche alla bozza, ma non sono
disponibili per gli utenti. L'etichetta aggiornata deve essere PUBLISHED
prima che le modifiche
diventino visibili agli utenti. Per maggiori informazioni, consulta la sezione Ciclo di vita
dell'etichetta.