REST Resource: projects.locations.operations

Risorsa: operazione

Questa risorsa rappresenta un'operazione a lunga esecuzione che è il risultato di una chiamata API di rete.

Rappresentazione JSON
{
  "name": string,
  "metadata": {
    "@type": string,
    field1: ...,
    ...
  },
  "done": boolean,

  // Union field result can be only one of the following:
  "error": {
    object (Status)
  },
  "response": {
    "@type": string,
    field1: ...,
    ...
  }
  // End of list of possible types for union field result.
}
Campi
name

string

Il nome assegnato dal server, univoco solo all'interno dello stesso servizio che lo restituisce in origine. Se utilizzi il mapping HTTP predefinito, name deve essere un nome di risorsa che termina con operations/{unique_id}.

metadata

object

Metadati specifici del servizio associati all'operazione. In genere contiene informazioni sull'avanzamento e metadati comuni come l'ora di creazione. Alcuni servizi potrebbero non fornire questi metadati. Qualsiasi metodo che restituisce un'operazione a lunga esecuzione deve documentare l'eventuale tipo di metadati.

Un oggetto contenente campi di tipo arbitrario. Un campo aggiuntivo "@type" contiene un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Se il valore è false, significa che l'operazione è ancora in corso. Se true, l'operazione viene completata ed è disponibile error o response.

Campo di unione result. Il risultato dell'operazione, che può essere un error o un response valido. Se done == false, non viene impostato né errorresponse. Se done == true, è possibile impostare esattamente un valore tra error o response. Alcuni servizi potrebbero non fornire il risultato. result può essere solo uno dei seguenti:
error

object (Status)

L'errore risultante dall'operazione in caso di errore o annullamento.

response

object

La normale risposta dell'operazione in caso di esito positivo. Se il metodo originale non restituisce dati in caso di esito positivo, come Delete, la risposta è google.protobuf.Empty. Se il metodo originale è Get/Create/Update standard, la risposta dovrebbe essere la risorsa. Per altri metodi, la risposta dovrebbe avere il tipo XxxResponse, dove Xxx è il nome del metodo originale. Ad esempio, se il nome del metodo originale è TakeSnapshot(), il tipo di risposta dedotto è TakeSnapshotResponse.

Un oggetto contenente campi di tipo arbitrario. Un campo aggiuntivo "@type" contiene un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }.

Stato

Il tipo Status definisce un modello di errore logico adatto a diversi ambienti di programmazione, tra cui API REST e API RPC. È utilizzato da gRPC. Ogni messaggio Status contiene tre tipi di dati: il codice, il messaggio e i dettagli dell'errore.

Per saperne di più su questo modello di errore e su come utilizzarlo, consulta la Guida alla progettazione delle API.

Rappresentazione JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campi
code

integer

Il codice di stato, che dovrebbe essere un valore enum di google.rpc.Code.

message

string

Un messaggio di errore rivolto agli sviluppatori, che dovrebbe essere in inglese. Qualsiasi messaggio di errore rivolto agli utenti deve essere localizzato e inviato nel campo google.rpc.Status.details oppure localizzato dal client.

details[]

object

Un elenco di messaggi contenenti i dettagli dell'errore. Le API possono utilizzare un insieme comune di tipi di messaggi.

Un oggetto contenente campi di tipo arbitrario. Un campo aggiuntivo "@type" contiene un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }.

Metodi

cancel

Avvia l'annullamento asincrono in un'operazione a lunga esecuzione.

get

Recupera lo stato più recente di un'operazione a lunga esecuzione.

list

Elenca le operazioni che corrispondono al filtro specificato nella richiesta.