Tugas Persetujuan
Tugas Persetujuan memungkinkan Anda mengonfigurasi integrasi berbasis persetujuan. Hal ini juga memungkinkan Anda mengontrol alur integrasi.
Anda dapat menggunakan tugas Persetujuan untuk mengirim email permintaan persetujuan ke satu atau beberapa pengguna integrasi. Email tersebut menyertakan link ke integrasi tempat pengguna dapat menyetujui atau menolak permintaan secara manual.
Selama eksekusi integrasi, saat kontrol mencapai tugas Approval, eksekusi akan dihentikan, dan semua tugas setelah tugas Approval akan ditangguhkan. Integrasi akan melanjutkan eksekusi hanya jika pengguna menyetujui atau menolak permintaan persetujuan, baik di konsol Google Cloud atau dengan menggunakan API.
Tugas Persetujuan dapat digunakan untuk tujuan berikut:
- Untuk menangguhkan dan mencabangkan integrasi berdasarkan persetujuan atau penolakan pengguna.
- Untuk menangguhkan integrasi hingga durasi yang ditentukan.
- Untuk digunakan sebagai titik henti sementara guna men-debug integrasi.
Membandingkan Tugas persetujuan, Tugas penangguhan, dan Tugas timer
Ketiga tugas (Approval, Suspend, dan Timer) menjalankan fungsi yang serupa, yaitu menjeda dan melanjutkan integrasi. Namun, ada perbedaan kecil di antara keduanya. Tabel berikut menjelaskan perbedaan di antara ketiga tugas tersebut.
| Tugas persetujuan | Tugas penangguhan | Tugas timer |
|---|---|---|
| Dilanjutkan saat pengguna menyetujui atau menolak permintaan di UI Integrasi atau menggunakan API. | Mendukung pelanjutan integrasi secara manual dan otomatis. Jika tidak ada intervensi manual untuk mencabut penangguhan, integrasi akan otomatis melanjutkan eksekusi setelah batas waktu penangguhan berakhir. | Hanya mendukung pelanjutan otomatis integrasi. Eksekusi integrasi akan otomatis dilanjutkan setelah batas waktu penangguhan berakhir. |
Dapat melanjutkan integrasi dari UI Integrasi atau dengan memanggil metode
suspensions.resolve. Lihat Menyetujui atau menolak menggunakan API. |
Dapat melanjutkan integrasi dengan memanggil
metode
suspensions.lift. |
Hanya mendukung pelanjutan otomatis integrasi. |
| Pengguna menerima notifikasi saat integrasi dijeda (ditangguhkan). | Pengguna tidak menerima notifikasi apa pun saat integrasi dijeda (ditangguhkan). | Pengguna tidak menerima notifikasi apa pun saat integrasi dijeda (ditangguhkan). |
Mendukung variabel output (boolean), yang memungkinkan Anda melakukan pemeriksaan bersyarat
sebelum melanjutkan integrasi. Namun, variabel output hanya dapat memiliki
nilai true atau false. |
Mendukung variabel output (string), yang memungkinkan Anda melakukan pemeriksaan bersyarat sebelum melanjutkan integrasi. Anda dapat menetapkan nilai apa pun ke variabel output. | Tidak mendukung variabel output apa pun. |
Mengonfigurasi tugas Approval
Untuk mengonfigurasi tugas Approval:
- Di konsol Google Cloud , buka halaman Application Integration.
- Di menu navigasi, klik Integrations.
Halaman Integrations akan muncul dan mencantumkan semua integrasi yang tersedia di project Google Cloud.
- Pilih integrasi yang ada atau klik Create integration untuk membuat integrasi baru.
Jika Anda membuat integrasi baru:
- Masukkan nama dan deskripsi di panel Create Integration.
- Pilih region untuk integrasi.
- Pilih akun layanan untuk integrasi. Anda dapat mengubah atau memperbarui detail akun layanan integrasi kapan saja dari panel Integration summary di toolbar integrasi.
- Klik Create. Integrasi yang baru dibuat akan terbuka di editor integrasi.
- Di menu navigasi editor integrasi, klik Tasks untuk melihat daftar tugas dan konektor yang tersedia.
- Klik dan tempatkan elemen tugas Approval di editor integrasi.
- Klik elemen tugas Approval di desainer untuk melihat panel konfigurasi tugas Approval.
- Konfigurasikan kolom yang ditampilkan menggunakan Properti konfigurasi untuk tugas
seperti yang dijelaskan dalam tabel di bawah.
Semua perubahan pada properti akan disimpan secara otomatis.
Properti konfigurasi
Tabel berikut menjelaskan properti konfigurasi tugas Approval.
| Properti | Data type | Deskripsi |
Recipients
|
Array String | Alamat email yang akan dikirimi notifikasi saat tugas ditangguhkan. Masukkan beberapa alamat email yang dipisahkan dengan koma. |
Custom notification message
|
String | Pesan kustom yang akan disertakan dalam notifikasi email saat tugas ditangguhkan. Nilai
dapat berupa literal atau variabel. Jika pesan kustom tersedia dalam variabel,
klik VAR dan pilih variabel.
|
Reminder frequency (in hours)
|
Bilangan bulat | Frekuensi notifikasi pengingat.
Jika penangguhan dalam status belum terselesaikan, Anda dapat mengirim notifikasi email pengingat yang meminta pengguna yang diberi otorisasi untuk menyelesaikan penangguhan. |
Time until expiration (in hours)
|
Bilangan bulat | Jangka waktu penangguhan.
Jika penangguhan tidak diselesaikan dalam batas waktu, penangguhan akan ditolak secara default. |
On expiration
|
Boolean | Tindakan yang akan diambil setelah masa penangguhan berakhir.
Anda dapat memilih untuk menolak penangguhan atau mencabut penangguhan. Secara default, penangguhan ditolak. |
isApproved (Approval)
|
Boolean | Variabel output yang memiliki status penangguhan setelah penyelesaian.
Variabel |
Merespons permintaan persetujuan menggunakan API
Untuk menyetujui atau menolak permintaan persetujuan yang tertunda tanpa konsol Google Cloud , panggil
metode
projects.locations.integrations.executions.suspensions.resolve.
Untuk menyetujui atau menolak permintaan, Anda memerlukan
izin integrations.suspensions.resolve. Untuk mencantumkan penangguhan, Anda juga memerlukan
izin integrations.suspensions.list. Peran Application Integration Approver
(roles/integrations.suspensionResolver) berisi kedua izin tersebut, begitu juga dengan
peran Application Integration Admin (roles/integrations.integrationAdmin).
Jika integrasi menggunakan akun layanan run-as, berikan peran Service Account User
(roles/iam.serviceAccountUser) di akun layanan tersebut. Persyaratan ini
berlaku seiring dengan peluncuran yang dijelaskan dalam
Memberikan Pengguna
Akun Layanan.
- Untuk menemukan permintaan yang tertunda, cantumkan penangguhan eksekusi menggunakan
metode
projects.locations.integrations.executions.suspensions.list:curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME/executions/EXECUTION_ID/suspensions"Dalam respons, temukan penangguhan yang
taskId-nya adalah ID tugas Persetujuan Anda dan yangstate-nya adalahPENDING. Respons juga mencakup penangguhan dari tugas Suspend dan dari tugas Approval lainnya dalam eksekusi yang sama. Catatnamepenangguhan, yang diakhiri dengan ID penangguhan. - Untuk menyetujui atau menolak permintaan, panggil metode
suspensions.resolve:curl -X POST \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{ "suspension": { "eventExecutionInfoId": "EXECUTION_ID", "integration": "INTEGRATION_NAME", "taskId": "TASK_ID", "state": "STATE" } }' \ "https://integrations.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/integrations/INTEGRATION_NAME/executions/EXECUTION_ID/suspensions/SUSPENSION_ID:resolve"
Ganti kode berikut:
PROJECT_ID: ID project Google Cloud Anda.LOCATION: Region integrasi.INTEGRATION_NAME: Nama integrasi.EXECUTION_ID: ID eksekusi yang ditangguhkan.TASK_ID: ID tugas Persetujuan (taskIdpenangguhan).SUSPENSION_ID: ID penangguhan darinamepenangguhan.STATE: Status penyelesaian. GunakanLIFTEDuntuk menyetujui permintaan (menetapkanisApprovedketrue), atauREJECTEDuntuk menolaknya (menetapkanisApprovedkefalse).
Strategi penanganan error
Strategi penanganan error untuk tugas menentukan tindakan yang harus diambil jika tugas gagal karena error sementara. Untuk mengetahui informasi tentang cara menggunakan strategi penanganan error, dan untuk mengetahui berbagai jenis strategi penanganan error, lihat Strategi penanganan error.
Kuota dan batas
Untuk mengetahui informasi tentang kuota dan batas, lihat Kuota dan batas.
Langkah berikutnya
- Pelajari semua tugas dan pemicu.
- Pelajari cara menguji dan memublikasikan integrasi.
- Pelajari penanganan error.
- Pelajari log eksekusi integrasi.