REST Resource: operations

Resource: Operasi

Resource ini mewakili operasi yang berjalan lama yang merupakan hasil dari panggilan API jaringan.

Representasi 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.
}
Kolom
name

string

Nama yang ditetapkan server, yang hanya unik dalam layanan yang sama yang awalnya menampilkannya. Jika Anda menggunakan pemetaan HTTP default, name harus berupa nama resource yang diakhiri dengan operations/{unique_id}.

metadata

object

Metadata khusus layanan yang terkait dengan operasi. Biasanya berisi informasi progres dan metadata umum, seperti waktu pembuatan. Beberapa layanan mungkin tidak menyediakan metadata tersebut. Setiap metode yang menampilkan operasi yang berjalan lama harus mendokumentasikan jenis metadata, jika ada.

Objek yang berisi kolom dengan jenis arbitrer. Kolom tambahan "@type" berisi URI yang mengidentifikasi jenisnya. Contoh: { "id": 1234, "@type": "types.example.com/standard/id" }.

done

boolean

Jika nilainya false, artinya operasi masih berlangsung. Jika true, operasi selesai, dan error atau response akan tersedia.

Kolom union result. Hasil operasi, yang dapat berupa error atau response yang valid. Jika done == false, error atau response tidak akan ditetapkan. Jika done == true, maka hanya satu dari error atau response yang dapat ditetapkan. Beberapa layanan mungkin tidak memberikan hasil. result hanya dapat berupa salah satu dari berikut:
error

object (Status)

Hasil error operasi jika terjadi kegagalan atau pembatalan.

response

object

Respons normal dari operasi jika berhasil. Jika metode asli tidak menampilkan data keberhasilan, seperti Delete, responsnya adalah google.protobuf.Empty. Jika metode asli adalah Get/Create/Update standar, responsnya harus berupa resource. Untuk metode lain, respons harus memiliki jenis XxxResponse, dengan Xxx sebagai nama metode asli. Misalnya, jika nama metode asli adalah TakeSnapshot(), jenis respons yang disimpulkan adalah TakeSnapshotResponse.

Objek yang berisi kolom dengan jenis arbitrer. Kolom tambahan "@type" berisi URI yang mengidentifikasi jenisnya. Contoh: { "id": 1234, "@type": "types.example.com/standard/id" }.

Status

Jenis Status menentukan model error logis yang cocok untuk lingkungan pemrograman yang berbeda, termasuk REST API dan RPC API. Digunakan oleh gRPC. Setiap pesan Status berisi tiga bagian data: kode error, pesan error, dan detail error.

Anda dapat mengetahui selengkapnya tentang model error ini dan cara menggunakannya dalam Panduan Desain API.

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

integer

Kode status, yang harus berupa nilai enum google.rpc.Code.

message

string

Pesan error yang ditampilkan ke developer dan seharusnya dalam bahasa Inggris. Setiap pesan error yang ditampilkan kepada pengguna harus dilokalkan dan dikirim di kolom google.rpc.Status.details, atau dilokalkan oleh klien.

details[]

object

Daftar pesan yang membawa detail error. Ada sekumpulan jenis pesan umum yang dapat digunakan oleh API.

Objek yang berisi kolom dengan jenis arbitrer. Kolom tambahan "@type" berisi URI yang mengidentifikasi jenisnya. Contoh: { "id": 1234, "@type": "types.example.com/standard/id" }.

Metode

cancel

Memulai pembatalan asinkron pada operasi yang berjalan lama.

delete

Menghapus operasi yang berjalan lama.

get

Mendapatkan status terbaru dari operasi yang berjalan lama.

list

Mencantumkan operasi yang cocok dengan filter yang ditentukan dalam permintaan.