Administration

Addon Enable / Opt-in per Tenant

Menyalakan addon per workspace dari menu Addons, mematikannya beserta perilaku soft-block, serta memahami apa yang berubah di menu Integration dan editor BPMN.

Addon tidak lagi otomatis tersedia begitu terpasang di sebuah instance. Sekarang setiap workspace menyalakan sendiri addon yang ingin dipakainya (opt-in), dan addon yang belum dinyalakan tidak bisa dikonfigurasi maupun dipanggil dari proses. Katalognya tetap terbuka — semua addon yang boleh dilihat tetap tampil — yang berubah hanya izin memakainya.

Pengaturannya ada di menu Addons, pada grup ADMINISTRATION di sidebar Studio.

Menu Addons adalah kendali admin workspace, bukan setting end-user. Anda membutuhkan role Owner atau Admin SOP pada workspace tersebut untuk menyalakan atau mematikan addon.

Prasyarat

  1. Role Owner atau Admin SOP pada workspace yang bersangkutan.
  2. Addon yang dituju sudah terpasang di instance dan terlihat di katalog workspace Anda.

Yang dibaca adalah role keanggotaan workspace, bukan role realm Keycloak. Akun dengan platform_owner atau license_admin di Keycloak tetap ditolak 403 bila di workspace tersebut ia hanya berstatus member. Ini penyebab 403 yang paling sering salah didiagnosis sebagai bug — lihat Troubleshooting.

Dua Hal yang Sering Tertukar

Fitur ini punya dua sumbu berbeda. Hampir semua kebingungan datang dari menganggapnya satu hal.

Visibility — boleh melihatActivation — sudah menyalakan
Melekat padaaddonpasangan (addon, workspace)
Diatur olehprivat/publik, properti addontombol Enable for this workspace
Siapa yang boleh mengubahOwner di workspace pemilik addonOwner atau Admin SOP di workspace itu sendiri
Efek kalau dimatikanaddon hilang dari katalog workspace lainaddon tidak bisa dipakai di workspace ini saja

Activation adalah yang Anda pakai sehari-hari. Sumbu visibility baru relevan bila workspace Anda menerbitkan addon sendiri — dan pada rilis ini kendalinya belum terbuka, lihat Batasan Fase 1.

Membuka Menu Addons

Dari sidebar Studio, buka grup ADMINISTRATION, lalu pilih Addons.

Menu Addons pada grup ADMINISTRATION di sidebar Studio, dengan halaman katalog Addons terbuka

Halaman ini menampilkan seluruh addon yang boleh dilihat workspace Anda, bukan hanya yang aktif. Addon yang belum dinyalakan tetap tampil dengan status Disabled — itu keadaan normal, bukan tanda ada yang salah.

Anatomi Kartu Addon

Katalog addon menampilkan kartu berstatus Enabled dan Disabled berdampingan
BagianKeterangan
NamaNama tampilan addon.
slug · versiKunci teknis dan versi addon, dibaca dari paket addon. Nilai inilah yang muncul di pesan error runtime.
Badge statusEnabled (hijau) atau Disabled — status untuk workspace ini saja.
Badge asalPlatform addon untuk addon yang dipasang admin instance. Addon yang diterbitkan sebuah workspace ditandai berbeda.
DeskripsiDiambil dari index.json di dalam paket addon, bukan diketik lewat form.
Used by N integration configurationsJumlah konfigurasi integrasi di workspace ini yang menunjuk addon tersebut. Perlakukan sebagai indikasi, bukan angka pasti — lihat Batasan Fase 1.
Enable for this workspaceSwitch aktivasi. Hanya tampil aktif bagi Owner / Admin SOP.

Menyalakan Addon

Alurnya searah: nyalakan di menu Addons, lalu konfigurasikan di menu Integration. Menu Addons memang bukan tempat mengisi kredensial.

  1. Buka Addons, cari kartu addon yang dituju.
  2. Nyalakan switch Enable for this workspace.
  3. Badge kartu berubah menjadi Enabled. Tidak ada dialog konfirmasi — menyalakan addon tidak merusak apa pun yang sedang berjalan.
Kartu Date Calculator setelah switch Enable for this workspace dinyalakan, badge berubah menjadi Enabled

Setelah aktif, addon langsung muncul sebagai entri baru di menu Integration — di sanalah kredensial dan endpoint-nya diisi.

Halaman konfigurasi Date Calculator di menu Integration, masih kosong tanpa konfigurasi

Addon yang sudah Enabled tetapi belum punya satu pun konfigurasi adalah keadaan yang sah, bukan setengah jadi. Enable memberi izin memakai; konfigurasi adalah langkah terpisah.

Menyalakan addon yang sudah menyala aman diulang — tidak membuat aktivasi ganda.

Yang Berubah di Menu Integration

Halaman All Integrations (/{workspace}/integration) memisahkan integrasi bawaan dari addon.

Halaman Integration dengan seksi BUILT-IN dan ADDONS, serta tombol Manage Addons
SeksiIsi
BUILT-INIntegrasi bawaan platform (API Call, Auth Token, Database, Email, Odoo, Telegram, Template, WhatsApp). Tidak terpengaruh opt-in.
ADDONSHanya addon yang sudah dinyalakan di workspace ini.
TURNED OFF, STILL CONFIGUREDAddon yang dimatikan tetapi konfigurasinya masih tersimpan.

Tombol Manage Addons di kanan atas membawa Anda langsung ke menu Addons.

Workspace yang belum menyalakan addon apa pun mendapat empty state yang menyebutkan jalan keluarnya, bukan halaman kosong yang tidak bisa dibedakan dari gagal muat:

Seksi ADDONS kosong dengan pesan No addon is turned on yet dan tombol Go to Addons

Mematikan Addon

  1. Menu Addons, matikan switch Enable for this workspace.
  2. Muncul dialog konfirmasi "Disable <nama addon>?".
  3. Pilih Disable addon untuk melanjutkan, atau Cancel untuk membatalkan.
Dialog konfirmasi Disable Date Calculator yang menjelaskan perilaku soft-block

Berbeda dengan menyalakan, mematikan selalu meminta konfirmasi. Isi dialognya menjelaskan bahwa penjagaannya bersifat lunak (soft-block):

  • Proses yang sedang berjalan tetap diselesaikan, tidak dihentikan di tengah jalan.
  • Yang ditolak adalah eksekusi baru yang memakai addon tersebut, sampai addon dinyalakan kembali.
  • Konfigurasi lama tidak dihapus.

Konfigurasi yang tertinggal itu tetap terlihat di halaman Integration, pada seksi Turned off, still configured:

Seksi Turned off, still configured pada halaman Integration, tiap kartu berbadge Addon turned off

Tiap kartu di seksi ini berbadge Addon turned off disertai keterangan bahwa konfigurasinya dipertahankan tetapi tidak lagi dijalankan. Menyalakan addonnya kembali memulihkan keadaan semula tanpa perlu konfigurasi ulang.

Pada instance bersama, jangan menekan Disable untuk addon yang sedang dipakai workspace lain sebelum memastikannya. Aktivasi memang terpisah per workspace, tetapi konfigurasi dan proses berjalan tidak selalu jelas pemiliknya dari halaman ini.

Yang Berubah di Editor BPMN

Addon masuk ke proses lewat panel Integrations pada sebuah elemen BPMN — bukan lewat palette di sisi kiri, yang tetap berisi elemen BPMN standar.

Pilih sebuah service task, lalu buka panel Integrations-nya:

Panel Integrations pada sebuah service task di editor BPMN, menampilkan satu integrasi addon yang sudah terpasang

Tombol Add Integration membuka daftar addon yang bisa dipilih. Daftar ini hanya memuat addon yang sudah dinyalakan di workspace tersebut — addon lain di katalog tidak muncul sama sekali:

Picker Add Integration di editor BPMN, hanya menampilkan addon yang berstatus enabled beserta action-nya

Dua hal yang perlu diketahui saat membaca daftar ini:

  • Kelompoknya diberi judul memakai deskripsi addon, bukan namanya. Cocokkan lewat deskripsi dan versinya.
  • Addon yang sudah enabled belum tentu menyumbang action. Sebagian addon hanya menyediakan komponen tampilan dan akan tampil sebagai kelompok tanpa satu pun action yang bisa dipilih.

Integrasi yang terlanjur terpasang pada sebuah elemen tetap terlihat dan masih berstatus Active di editor walaupun addonnya sudah dimatikan workspace-wide. Ini disengaja: penolakannya terjadi saat eksekusi, dan kalau panelnya ikut hilang, satu-satunya petunjuk kenapa proses gagal saat runtime hilang bersamanya.

Aktivasi Terkunci per Workspace

Menyalakan addon adalah keputusan satu workspace, bukan keputusan akun dan bukan keputusan instance. Akun yang sama, di workspace lain, akan melihat addon yang sama dalam keadaan Disabled:

Addon Date Calculator berstatus Disabled di workspace lain milik akun yang sama

Konsekuensi praktisnya: bila organisasi Anda memisahkan lingkungan uji dan produksi ke dua workspace berbeda, addon harus dinyalakan di masing-masing. Menyalakannya di satu workspace tidak berpengaruh pada yang lain. Untuk TEST dan LIVE di dalam satu workspace yang sama, satu kali enable berlaku untuk keduanya.

Menerbitkan Addon dari Workspace

Tombol Publish addon di kanan atas menu Addons memungkinkan sebuah workspace menerbitkan addonnya sendiri.

Dialog Publish addon dengan kolom Addon key, pemilih file zip, dan catatan bahwa addon tetap privat
KolomKeterangan
Addon keyDipakai di URL dan path instalasi. Hanya huruf, angka, tanda hubung, dan garis bawah.
Addon packageBerkas .zip paket addon. Arsipnya wajib memuat index.json — nama, versi, dan deskripsi dibaca dari sana, bukan diketik di form.

Dialog ini menyatakan sendiri batasannya: addon yang diterbitkan sebuah workspace tetap privat pada rilis ini dan hanya terlihat di workspace penerbitnya. Tidak ada pilihan mempublikkannya ke workspace lain dari layar ini.

Troubleshooting

GejalaPenyebab paling mungkinTindakan
Addon tidak muncul di menu IntegrationBelum di-enable di workspace ini.Buka Addons, nyalakan switch-nya.
Addon tidak muncul di picker Add Integration editor BPMNBelum di-enable, atau addonnya memang tidak menyediakan action.Cek statusnya di menu Addons lebih dulu; kalau sudah Enabled tapi tetap tanpa action, addon tersebut bukan addon service task.
Addon tidak muncul di menu Addons sama sekaliAddon privat milik workspace lain, atau memang belum terpasang di instance ini.Hubungi pemilik addon atau admin instance.
Menekan Enable dijawab 403 padahal akun terlihat "admin"Yang dibaca adalah role keanggotaan workspace (Owner / Admin SOP). Role realm Keycloak seperti platform_owner tidak dihitung sama sekali.Cek keanggotaan Anda di workspace tersebut, bukan role di Keycloak. Minta Owner workspace menaikkan role Anda.
Menekan Enable dijawab 404Addon tidak terlihat oleh workspace ini (privat milik workspace lain), atau backend di instance itu belum memuat endpointnya.Pastikan versi service, lalu cek ulang katalog.
Addon sudah di-enable di satu workspace tapi terbaca mati di workspace lainAktivasi dikunci per workspace, bukan per akun atau per instance.Nyalakan addon di masing-masing workspace yang membutuhkannya.
Service task gagal saat runtime dengan pesan addon tidak aktifAddon dimatikan setelah proses dirancang (soft-block).Nyalakan kembali addonnya, lalu ulangi activity yang gagal.
Menyimpan konfigurasi integrasi ditolakAddon belum di-enable di workspace ini.Nyalakan dulu di menu Addons, lalu simpan ulang.
Switch Enable for this workspace tidak bisa ditekanRole Anda member.Minta Owner atau Admin SOP workspace yang melakukannya.
Konfigurasi lama hilang dari submenu Integration setelah addon dimatikanPerilaku normal. Konfigurasinya tidak dihapus.Buka All Integrations, lihat seksi Turned off, still configured.

Batasan Fase 1

Hal-hal berikut belum tersedia pada rilis ini. Disebutkan supaya tidak dicari-cari di layar.

  1. Tidak ada kendali privat/publik di UI. Kartu addon tidak menyediakan aksi mengubah visibility, dan dialog Publish menyatakan addon terbitan workspace tetap privat pada rilis ini. Sumbu visibility ada di rancangan dan di API, tetapi layarnya belum ada.
  2. Version bump belum ada. Menerbitkan ulang key yang sama tidak menimpa addon yang sudah terbit.
  3. Menu Addons bukan tempat konfigurasi. Kredensial dan endpoint tetap diisi lewat menu Integration.
  4. Governance admin instance belum masuk. Kendali "addon mana yang boleh beredar di instance" belum bagian dari fase ini.

Angka pemakaian belum bisa dipercaya. Pada environment yang diperiksa saat dokumen ini ditulis, seluruh kartu menampilkan Used by 0 integration configurations dan dialog Disable menyebut used by 0 processes — termasuk untuk addon yang jelas-jelas punya konfigurasi, karena addon yang sama terdaftar di seksi Turned off, still configured. Jangan memakai angka ini sebagai dasar keputusan mematikan addon. Periksa seksi Turned off, still configured dan proses yang berjalan secara langsung.

Lampiran — Kontrak API

Untuk integrator dan siapa pun yang menelusuri lewat network tab. Base path: /api/v1/integration.

Tabel ini merangkum kontrak Fase 1. Yang dijalankan langsung lewat UI saat dokumen ini ditulis adalah jalur enable dan disable; sisanya mengikuti rancangan dan perlu dikonfirmasi ulang bila perilakunya terasa berbeda.

EndpointWewenangKeterangan
GET /addonsAnggota workspaceKatalog; tiap item membawa status aktivasi, kepemilikan, dan jumlah pemakaian.
POST /addons/{key}/enableOwner / Admin SOPIdempoten. 404 bila addon tidak terlihat oleh workspace pemanggil.
POST /addons/{key}/disableOwner / Admin SOPIdempoten.
POST /addons/{key}/visibilityOwner sajaMengubah privat/publik. Body memerlukan is_private secara eksplisit. Perhatikan: endpointnya POST .../visibility, bukan PATCH terhadap field is_private.
POST /addonsOwner / Admin SOPPublish addon; multipart berisi addon key dan berkas .zip.
KodeArti di rangkaian endpoint ini
400Body tidak sah, misalnya is_private tidak disertakan.
403Role keanggotaan workspace tidak mencukupi.
404Addon tidak ada atau tidak terlihat oleh workspace pemanggil — sengaja tidak dibedakan, agar keberadaan addon privat milik workspace lain tidak bocor.
409Memprivatkan addon yang masih diaktifkan workspace lain, atau publish key yang sudah terpakai.
422Addon terlihat tetapi belum di-enable di workspace pemanggil.

Workspace pemanggil selalu diambil dari konteks autentikasi, tidak pernah dari URL atau body.