Di satu sisi, mimoLive menerbitkan Remote Control UI yang bisa Anda gunakan untuk membuat antarmuka pengguna khusus yang bisa Anda gunakan di tablet atau perangkat serupa untuk mengendalikan mimoLive dari jarak jauh.
Selain itu, mimoLive menyediakan akses ke HTTP API sehingga Anda dapat membuat skrip khusus (melalui bash dan ikal, AppleScript, built-in Lapisan Otomasi atau sesuatu yang serupa yang dapat berbicara dengan HTTP server) yang mengontrol berbagai aspek mimoLive - kemungkinannya hampir tak terbatas. (Lihat Contoh API penggunaan)
Dalam topik ini, kita akan fokus pada bagian telanjang HTTP API. Sebagai API didasarkan pada Spesifikasi json:api pastikan untuk membiasakan diri Anda dengannya sebelum bekerja dengan mimoLive API.
*Selain dokumentasi, Anda juga dapat melihat skrip demo PHP kami di github
Juga, tersedia contoh untuk Skrip Shell dan Apple.
API Akses
MimoLive API dapat diakses di mesin yang sama dengan tempat mimoLive berjalan (melalui "localhost") dan di jaringan lokal (melalui ".local").
Jika diaktifkan, mimoLive melayani sebuah HTTP server pada "port 8989".
Semua API diawali dengan path "/api/v1/" sehingga jika Anda ingin mendapatkan daftar dokumen yang dibuka, Anda dapat memanggil "http://localhost:8989/api/v1/documents".
Semua ID (untuk dokumen, layer, sumber, tujuan keluaran, dll.) disimpan dan disimpan ke disk, sehingga pengkodean nilai ini aman selama dokumen yang sama digunakan di dalam mimoLive.
Silakan merujuk ke API Endpoints untuk mengetahui lebih lanjut mengenai semua endpoint yang disediakan.
Otentikasi
Dimulai dengan mimoLive 3.1, jika pengguna mengaktifkan autentikasi di preferensi mimoLive, Anda perlu memberikan kata sandi pengguna untuk setiap permintaan ke API yang dapat dilakukan dengan dua cara:
- Mengatur kebiasaan HTTP header "X-MimoLive-Password-SHA256: xxxxxxx"
- Menambahkan parameter kueri "?pwSHA256=xxxxxxx"
Dalam kedua kasus tersebut, xxxxxxx harus diganti dengan kata sandi asli (dalam UTFPengkodean -8) di-hash menggunakan SHA-256 dan dikodekan sebagai serangkaian digit heksadesimal.
Untuk memudahkan pengembangan skrip dan aplikasi khusus, mimoLive menunjukkan hal ini API dan memungkinkan penyalinan ke clipboard di panel preferensi Remote Controls (Kontrol Jarak Jauh):

Metode Otentikasi yang Sudah Tidak Digunakan
Sebelum mimoLive versi 3.1, permintaan terhadap API akan diautentikasi dengan menggunakan HTTP header "X-MimoLive-Password: " atau parameter kueri "?pw=" pada setiap permintaan.
Sayangnya, metode ini mengirimkan kata sandi secara jelas melalui koneksi jaringan yang berpotensi tidak aman yang dapat mengekspos data sensitif jika HTTP API kata sandi sedang digunakan kembali di tempat lain.
Meskipun masih berfungsi, metode autentikasi ini tidak disarankan dan mungkin akan dihapus di masa mendatang.
Kesalahan
Jika terjadi kesalahan selama permintaan, mimoLive akan berhenti memproses permintaan itu dan mengembalikan HTTP dengan kode status yang menunjukkan kesalahan. Tanggapan tersebut juga berisi sebuah JSON payload array objek kesalahan yang berisi informasi tambahan tentang setiap kesalahan yang terjadi:
{
"errors": [
{
"status": "404",
"title": "Not Found",
"description": "The requested object could not be found"
}
]
}
Akses Jarak Jauh melalui Internet
Sebagai HTTP API diaktifkan oleh server web yang terpasang di mimoLive, akses jarak jauh ke HTTP API dari mana saja di Internet dapat diaktifkan dengan memberikan nomor IP publik pada komputer mimoLive. Karena HTTP API tidak terlindungi dengan baik, ini adalah ide yang buruk. Cara yang lebih baik untuk mengaktifkan akses jarak jauh ke HTTP API melalui jaringan publik adalah untuk membuat terowongan yang aman ke komputer host mimoLive Anda menggunakan ngrok.