# API Key dan Scope

API key memberi sistem luar akses terbatas ke data workspace Anda tanpa membagikan login dashboard. Izin tiap key ditentukan oleh scope yang dipilih saat key dibuat.

## Sebelum mulai

- Anda adalah pemilik workspace.
- Paket Anda menyertakan akses API. Jumlah key mengikuti paket; bila penuh, tombol menjadi "Limit Reached".

## Membuat API key

1. Buka **Pengembang > API Keys**.
2. Klik "Create API Key".
3. Isi "API Key Name" (maksimal 100 karakter). Beri nama sesuai pemakainya, misalnya `n8n booking`, bukan nama orang.
4. Centang "Permissions". Pilih minimal satu, dan hanya yang dibutuhkan.
5. Klik "Create Key".
6. Salin key dari dialog "API Key Created" sebelum menekan "Done".

![Dialog pembuatan API key dengan kolom nama dan daftar Permissions](/images/api-key-dialog.png)

Key hanya tampil sekali. Server menyimpan hash SHA-256, bukan key-nya. Bila hilang, buat key baru.

## Masa berlaku

Key berlaku 365 hari secara bawaan. Tabel key menampilkan "Key Prefix", "Permissions", "Last Used", dan status, termasuk badge "Expires in N days".

## Memahami scope

Scope berpola `domain:aksi`, misalnya `customers:read`. Aksi yang umum adalah `read`, `write`, `delete`, `send`, dan `manage`. Scope dikelompokkan per domain seperti percakapan, pesan, pelanggan, template, broadcast, pembayaran, AI, dan akun.

Daftar scope lengkap dan scope yang dibutuhkan tiap endpoint ada di [API Reference](/api).

### Scope berdampak tinggi

Scope berikut tidak ikut dalam izin baca atau tulis biasa dan harus dipilih sengaja:

- `broadcast:send` menjangkau banyak pelanggan sekaligus.
- `payments:write` memindahkan uang pelanggan.
- `templates:send` menjangkau Meta dan nomor telepon nyata.
- `ai:manage` mengubah cara AI menjawab pelanggan.
- `marketing:write` mengirim event konversi ke Meta.
- Semua scope `:delete` menghapus data permanen.

## Scope tidak bisa diubah

Setelah key dibuat, scope-nya tetap. Untuk mengubah izin:

1. Buat key pengganti dengan scope baru.
2. Pindahkan integrasi ke key baru.
3. Cabut key lama.

Key lama dari sebelum scope diperkenalkan ditandai akses penuh. Ganti key semacam itu.

## Mencabut key

Pilih aksi cabut pada baris key. Pencabutan langsung berlaku dan tidak bisa dibatalkan, integrasi yang memakai key itu berhenti. Bila key bocor, cabut dulu baru selidiki.

## Praktik aman

- Satu key untuk satu integrasi.
- Jangan mencentang semua scope.
- Jangan simpan key di repositori publik.

## Hasil yang diharapkan

Key muncul di tabel dengan status aktif dan integrasi Anda bisa memakainya. Lanjut ke [Autentikasi](/developer/autentikasi).

## Masalah umum

- **403 insufficient_scope:** key tidak punya scope yang dibutuhkan. Lihat [Rate Limit dan Error](/developer/rate-limit-dan-error).
- **Tombol "Create API Key" tidak bisa dipakai:** kuota key paket sudah penuh atau paket belum menyertakan API.
