Skip to main content
YiDA menyediakan kemampuan remote API yang memungkinkan Anda memanggil antarmuka asinkron berbasis HTTP (lihat dokumentasi remote API untuk detailnya). Selain itu, platform YiDA menyediakan sejumlah remote API bawaan untuk mengoperasikan data YiDA.
YiDA Open API memerlukan autentikasi, sehingga tidak dapat dipanggil langsung dari halaman silent-login. Rutekan panggilan tersebut melalui fungsi FaaS atau layanan backend mandiri.

Catatan penggunaan API

Jalur permintaan

YiDA menyediakan API pada tingkat aplikasi. Di dalam sebuah aplikasi, panggil remote API (panggilan lintas aplikasi didukung) menggunakan format URL berikut:
Saat menulis kode permintaan API di platform YiDA, gunakan jalur relatif seperti contoh berikut agar Anda tidak perlu memperbarui kode ketika subdomain organisasi berubah.

Struktur respons

Struktur respons yang dikembalikan oleh remote API YiDA adalah sebagai berikut:

API Formulir

Platform YiDA menyediakan halaman bertipe formulir untuk mengumpulkan data formulir. API Formulir memungkinkan Anda membuat, membaca, memperbarui, dan menghapus data formulir. “Instans formulir” di sini mengacu pada satu rekaman dalam kumpulan data formulir.

Buat instans formulir

  • Jalur antarmuka: /v1/form/saveFormData.json
  • Metode permintaan: POST
  • Parameter: (formDataJson harus diserialisasi dengan JSON.stringify().)
  • Contoh respons:

Perbarui nilai komponen dalam formulir

  • Antarmuka: /v1/form/updateFormData.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

Hapus instans formulir

  • Antarmuka: /v1/form/deleteFormData.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

Dapatkan detail instans formulir berdasarkan ID instans

  • Antarmuka: /v1/form/getFormDataById.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:
Untuk result, lihat Lampiran 5: Format Objek Detail Instans Formulir.

Cari ID instans formulir berdasarkan kondisi

  • Antarmuka: /v1/form/searchFormDataIds.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:

Cari detail instans formulir berdasarkan kondisi

  • Antarmuka: /v1/form/searchFormDatas.json
  • Metode permintaan: GET
  • Kontrol izin: Antarmuka ini menghormati pengaturan izin tingkat halaman (kecuali untuk admin).
  • Parameter:
  • Contoh respons:

Dapatkan definisi formulir

Antarmuka ini akan ditingkatkan pada 1 Desember 2024. Setelah peningkatan, antarmuka ini hanya tersedia untuk admin dan tidak lagi tersedia untuk pengguna biasa.
  • Antarmuka: /v1/form/getFormComponentDefinationList.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:

Dapatkan data subformulir

  • Antarmuka: v1/form/listTableDataByFormInstIdAndTableId.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:

API Alur Kerja

Formulir alur kerja adalah salah satu kemampuan inti platform YiDA. API Alur Kerja memungkinkan Anda mengoperasikan instans alur kerja.

Mulai alur kerja

  • Jalur antarmuka: /v1/process/startInstance.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

Cari ID instans alur kerja berdasarkan kondisi

  • Jalur antarmuka: /v1/process/getInstanceIds.json
  • Metode permintaan: GET
  • Izin: Alur kerja harus memiliki izin “instans dapat dilihat” yang telah dikonfigurasi (kecuali untuk admin).
  • Parameter:
  • Contoh respons:

Dapatkan detail instans alur kerja berdasarkan kondisi

  • Jalur antarmuka: /v1/process/getInstances.json
  • Metode permintaan: GET
  • Izin: Alur kerja harus memiliki izin “instans dapat dilihat” yang telah dikonfigurasi (kecuali untuk admin).
  • Parameter:
  • Contoh respons:

Dapatkan detail instans alur kerja berdasarkan ID instans

  • Jalur antarmuka: /v1/process/getInstanceById.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:

Hapus instans alur kerja

  • Jalur antarmuka: /v1/process/deleteInstance.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

Hentikan instans alur kerja

  • Jalur antarmuka: /v1/process/terminateInstance.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

Jalankan satu tugas

  • Jalur antarmuka: /v1/task/executeTask.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

Dapatkan rekaman persetujuan

  • Jalur antarmuka: /v1/process/getOperationRecords.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:

Perbarui instans alur kerja

  • Jalur antarmuka: /v1/process/updateInstance.json
  • Metode permintaan: POST
  • Parameter:
  • Contoh respons:

API Task Center

Platform YiDA menyediakan task center tempat Anda dapat melihat daftar tugas dan status seluruh aplikasi di organisasi saat ini. API task center memungkinkan Anda menanyakan daftar tugas di task center.

Tugas yang dikirim

  • Jalur antarmuka: /v1/process/getMySubmitInApp.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:
    • Berhasil
  • Gagal

Tugas yang harus dilakukan

  • Jalur antarmuka: /v1/task/getTodoTasksInApp.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:
    • Berhasil
  • Gagal

Tugas yang telah selesai

  • Jalur antarmuka: /v1/task/getDoneTasksInApp.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:
    • Berhasil
  • Gagal

Tugas yang di-CC ke saya (Cakupan Aplikasi)

  • Jalur antarmuka: /v1/task/getNotifyMeTasksInApp.json
  • Metode permintaan: GET
  • Parameter:
  • Contoh respons:
    • Berhasil
  • Gagal

Lampiran

Format Data Formulir untuk Simpan/Perbarui

  • Setiap komponen dalam formulir memiliki ID unik (terlihat di panel “Advanced” di sebelah kanan komponen dalam desainer halaman), dan setiap komponen menggunakan format data tetap. Komponen formulir berikut didukung: input satu baris, input multi-baris, angka, radio, pilih dropdown, pilih banyak, pilih banyak dropdown, tanggal, rentang tanggal, pemilih pengguna, pemilih wilayah, pemilih departemen, pilih bertingkat, dan subformulir.
  • Saat menyimpan atau memperbarui data formulir, teruskan nilai formulir sebagai string JSON dalam format Map<String, Object>. Key-nya adalah ID komponen, dan value-nya adalah nilai komponen. Format nilai untuk setiap komponen adalah sebagai berikut:
  • Contoh lengkap data formulir:

Format Nilai Komponen untuk Pencarian Kondisional

  • Setiap komponen dalam formulir memiliki ID unik (terlihat di panel “Advanced” di sebelah kanan komponen dalam desainer halaman), dan setiap komponen memiliki format pencariannya sendiri. Komponen formulir berikut mendukung pencarian: input satu baris, input multi-baris, angka, radio, pilih dropdown, pilih banyak, pilih banyak dropdown, tanggal, rentang tanggal, pemilih pengguna, pemilih wilayah, pemilih departemen, pilih bertingkat, dan subformulir.
  • Saat mencari, gunakan format Map<String, Object> untuk mengekspresikan kondisi pencarian pada setiap komponen. Key-nya adalah ID komponen, dan value-nya adalah nilai pencarian untuk komponen tersebut. Tipe pencarian dan format nilai untuk setiap komponen adalah sebagai berikut:
  • Contoh lengkap:

Format Objek Detail Instans Alur Kerja

  • Setiap komponen dalam formulir memiliki ID unik (terlihat di panel “Advanced” di sebelah kanan komponen dalam desainer halaman), dan setiap komponen memiliki format pencariannya sendiri. Komponen formulir berikut mendukung pencarian: input satu baris, input multi-baris, angka, radio, pilih dropdown, pilih banyak, pilih banyak dropdown, tanggal, rentang tanggal, pemilih pengguna, pemilih wilayah, pemilih departemen, pilih bertingkat, dan subformulir.
  • Saat mencari, gunakan format Map<String, Object> untuk mengekspresikan kondisi pencarian pada setiap komponen. Key-nya adalah ID komponen, dan value-nya adalah nilai pencarian untuk komponen tersebut. Tipe pencarian dan format nilai untuk setiap komponen adalah sebagai berikut:
  • Demo format data lengkap:

Format Data Formulir sebagai Nilai Respons

Format data formulir untuk nilai respons pada dasarnya sama dengan Lampiran 1: Format Data Formulir untuk Simpan/Perbarui, dengan perbedaan berikut:
  • Pada input, nilai komponen wilayah adalah [“ID Provinsi”, “ID Kota”, “ID Distrik”]. Dalam respons, nilainya adalah [“Nama Provinsi”, “Nama Kota”, “Nama Distrik”].
  • Komponen radio, pilih dropdown, pilih banyak, dan pilih banyak dropdown mendukung internasionalisasi. Respons mengembalikan nilai data yang sesuai dengan parameter bahasa yang Anda teruskan.

Format Objek Detail Instans Formulir

  • Demo format data lengkap: