REST Resource: operations

Risorsa: operazione

Questa risorsa rappresenta un'operazione a lunga esecuzione risultante da 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 all'interno dello stesso servizio che lo restituisce in origine. Se utilizzi la mappatura HTTP predefinita, name dovrebbe essere un nome di risorsa che termina con operations/{unique_id}.

metadata

object

Questo campo conterrà un oggetto DevicesLongRunningOperationMetadata se l'operazione viene creata da claimAsync, unclaimAsync o updateMetadataAsync.

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 è stata completata ed è disponibile error o response.

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

object (Status)

Questo campo non verrà sempre impostato se l'operazione viene creata da claimAsync, unclaimAsync o updateMetadataAsync. In questo caso, le informazioni sugli errori relative a ogni dispositivo vengono impostate in response.perDeviceStatus.result.status.

response

object

Questo campo conterrà un oggetto DevicesLongRunningOperationResponse se l'operazione viene creata da claimAsync, unclaimAsync o updateMetadataAsync.

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. Viene utilizzato da gRPC. Ogni messaggio Status contiene tre dati: codice di errore, messaggio di errore e dettagli dell'errore.

Puoi trovare ulteriori informazioni su questo modello di errore e su come utilizzarlo nella guida alla progettazione delle API.

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

integer

Il codice di stato, che deve 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 all'utente deve essere localizzato e inviato nel campo google.rpc.Status.details oppure localizzato dal client.

details[]

object

Un elenco dei messaggi che contengono i dettagli dell'errore. Esiste un insieme comune di tipi di messaggi che le API possono utilizzare.

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

get

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