Akses Kunci API (API Access)

Panduan membuat, mengamankan kode rahasia, dan mengelola kunci API untuk integrasi backend dengan DeweStream.

DeweStream menyediakan antarmuka pemrograman aplikasi (API) terautentikasi bagi Member untuk menghubungkan sistem backend (seperti plugin LMS, server aplikasi kursus, atau platform otomatisasi mandiri) langsung dengan Library video Anda.

Panduan ini menjelaskan cara membuat kunci API, mengamankan kode rahasia, memantau penggunaan, serta mencabut akses integrasi yang sudah tidak digunakan.


API Access

Fitur pengelolaan kredensial integrasi dapat diakses langsung melalui dashboard Member:

  1. Buka dashboard di https://app.dewe.stream.
  2. Klik menu Account pada bilah navigasi samping.
  3. Gulir ke bagian kartu API access.

Di kartu ini, Anda dapat membuat kunci API baru, melihat daftar prefix kunci yang aktif, memeriksa waktu pemakaian terakhir, dan mencabut kunci yang tidak lagi diperlukan.


Langkah-langkah Membuat Kunci API

  1. Masuk ke menu Account di dashboard Member.
  2. Pada kartu API access, temukan formulir dengan label Integration label.
  3. Masukkan nama pengenal integrasi yang mudah diingat (maksimal 120 karakter), misalnya Website LMS Utama atau Server Pengujian Staging.
  4. Klik tombol Create API key.
  5. Kotak pemberitahuan berlatar khusus akan muncul dengan judul Save this secret now. yang menampilkan kode rahasia lengkap (format diawali dengan dws_...).
  6. Klik tombol Copy secret untuk menyalin seluruh string rahasia ke papan klip (clipboard).
  7. Simpan kode rahasia tersebut pada brankas kredensial (secret manager) atau variabel lingkungan (environment variables) server backend Anda.
  8. Setelah Anda yakin kunci telah tersimpan dengan aman, klik tombol I saved it untuk menutup tampilan rahasia.

Memantau Daftar dan Status Kunci

Daftar kunci pada kartu API access menampilkan rekam jejak setiap kredensial yang pernah diterbitkan:

  • Label Kunci: Nama deskriptif yang Anda berikan saat pembuatan.
  • Prefix Token (tokenPrefix): Potongan awal identitas kunci (contoh: dws_a1b2c3d4e5f6) yang aman untuk identifikasi tanpa membocorkan rahasia.
  • Waktu Pembuatan (Created): Tanggal dan waktu ketika kunci pertama kali diterbitkan.
  • Waktu Terakhir Digunakan (Last used): Waktu panggilan API terakhir yang berhasil menggunakan kunci ini. Demi efisiensi sistem, timestamp ini diperbarui berkala dengan jeda minimal 5 menit dari panggilan sebelumnya. Kunci yang belum pernah dipakai akan menampilkan status Not used yet.
  • Status Pencabutan: Kunci yang aktif memiliki tombol Revoke, sedangkan kunci yang telah dinonaktifkan ditandai dengan badge merah Revoked.

Mencabut Kunci API (Revoke)

Jika sebuah server integrasi dipensiunkan, kunci dicurigai bocor, atau integrasi pihak ketiga dihentikan:

  1. Buka menu Account → kartu API access.
  2. Temukan kunci yang ingin dihentikan pada daftar.
  3. Klik tombol merah Revoke.
  4. Status kunci akan langsung berubah menjadi badge Revoked.

Setelah dicabut:

  • Semua panggilan integrasi yang menggunakan kunci tersebut akan langsung ditolak dengan kode galat HTTP 401 (integration_unauthorized).
  • Tindakan pencabutan bersifat permanen dan tidak dapat dibatalkan.

Hubungan Kunci API dengan Sesi Dashboard

  • Kunci API menggunakan token Bearer independen yang tidak bergantung pada sesi browser dashboard Anda.
  • Melakukan logout dari dashboard Member atau berakhirnya sesi browser tidak akan membatalkan atau memutus kunci API yang sedang berjalan di backend Anda.
  • Kunci API juga tidak menggantikan atau melewati konfigurasi proteksi domain/path embed (Page-level Embed Protection) pada video player penonton.

Pemecahan Masalah Cepat

  • Kunci API hilang atau belum sempat dicatat: Klik Revoke pada baris kunci tersebut di kartu API access, lalu buat kunci baru dengan label yang jelas.
  • Panggilan API menerima respons HTTP 401 Unauthorized: Periksa kembali penulisan header Authorization: Bearer <secret> pada konfigurasi backend Anda. Pastikan tidak ada spasi terpotong dan kunci belum berstatus Revoked.
  • Panggilan API menerima respons HTTP 429 Too Many Requests: Backend Anda melebihi batas kecepatan (rate limit) 120 permintaan per menit per kunci. Terapkan jeda waktu atau caching lokal pada katalog video Anda sesuai nilai header Retry-After: 60.

Panduan Terkait

Last updated Oct 20, 2026