REST Resource: operations

Ressource: Vorgang

Diese Ressource steht für einen lange laufenden Vorgang, der das Ergebnis eines Netzwerk-API-Aufrufs ist.

JSON-Darstellung
{
  "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.
}
Felder
name

string

Der vom Server zugewiesene Name, der nur innerhalb des Dienstes eindeutig ist, der ihn ursprünglich zurückgibt. Wenn Sie die Standard-HTTP-Zuordnung verwenden, sollte name ein Ressourcenname sein, der auf operations/{unique_id} endet.

metadata

object

Dieses Feld enthält ein DevicesLongRunningOperationMetadata-Objekt, wenn der Vorgang von claimAsync, unclaimAsync oder updateMetadataAsync erstellt wird.

Ein Objekt mit Feldern eines beliebigen Typs. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Ist der Wert false, bedeutet das, dass der Vorgang noch läuft. Ist der Wert hingegen true, ist der Vorgang abgeschlossen und entweder error oder response ist verfügbar.

Union-Feld result. Das Ergebnis des Vorgangs kann entweder ein error oder eine gültige response sein. Wenn done = false ist, wird weder error noch response festgelegt. Wenn done = true ist, kann genau error oder response festgelegt werden. Einige Dienste liefern möglicherweise nicht das Ergebnis. Für result ist nur einer der folgenden Werte zulässig:
error

object (Status)

Dieses Feld wird nicht festgelegt, wenn der Vorgang von claimAsync, unclaimAsync oder updateMetadataAsync erstellt wird. In diesem Fall werden Fehlerinformationen für jedes Gerät in response.perDeviceStatus.result.status festgelegt.

response

object

Dieses Feld enthält ein DevicesLongRunningOperationResponse-Objekt, wenn der Vorgang von claimAsync, unclaimAsync oder updateMetadataAsync erstellt wird.

Ein Objekt mit Feldern eines beliebigen Typs. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

Status

Mit dem Typ Status wird ein logisches Fehlermodell definiert, das für verschiedene Programmierumgebungen wie REST APIs und RPC APIs geeignet ist. Dieses Modell wird von gRPC verwendet. Jede Status-Meldung enthält die folgenden drei Datenelemente: Fehlercode, Fehlermeldung und Fehlerdetails.

Weitere Informationen zu diesem Fehlermodell und zur Arbeit damit finden Sie in der API-Designanleitung.

JSON-Darstellung
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Felder
code

integer

Der Statuscode, der idealerweise ein ENUM-Wert von google.rpc.Code ist.

message

string

Eine an Entwickler gerichtete Fehlermeldung, die englischsprachig sein sollte. Jede Fehlermeldung an den Nutzer sollte lokalisiert und im Feld google.rpc.Status.details gesendet werden. Sie kann auch clientseitig lokalisiert werden.

details[]

object

Eine Auflistung aller Meldungen, die die Fehlerdetails enthalten. Es gibt einen gemeinsamen Satz von Nachrichtentypen, die APIs verwenden können.

Ein Objekt, das Felder eines beliebigen Typs enthält. Ein zusätzliches Feld "@type" enthält einen URI zur Identifizierung des Typs. Beispiel: { "id": 1234, "@type": "types.example.com/standard/id" }.

Methoden

get

Letzten Status eines lange laufenden Vorgangs abrufen.