Device Access project dibatasi oleh pengguna, struktur, dan batas kapasitas, tergantung pada lingkungan dan jenis penawaran Komersial.
Kami ingin developer menciptakan pengalaman pengguna yang menarik, tetapi kami juga ingin Layanan dan perangkat Nest agar selalu tersedia bagi pengguna. Integrasi yang membuat permintaan dalam jumlah besar dalam jangka waktu tertentu dapat memengaruhi layanan dan ketersediaan perangkat, sehingga SDM API menerapkan batas kapasitas. Pembatasan kapasitas membatasi jumlah panggilan API untuk jangka waktu tertentu dan mencegah pemanfaatan resource secara berlebihan.
Batasan menurut lingkungan
Semua project dimulai di lingkungan Sandbox . Sandbox adalah ditujukan untuk evaluasi SDM API dan penggunaan pribadi, serta dan batasan akan dibatasi sebagaimana mestinya. Lingkungan dengan basis pengguna yang lebih besar, seperti Pengembangan Komersial , memiliki batasan yang berbeda.
Batas pengguna sandbox
Akun developer di Sandbox dibatasi untuk 25 pengguna dalam 5 di semua proyek. Ada batas 3 project per akun.
Struktur dibatasi hanya untuk 5 pengguna, sehingga batas pengguna hanya akan tercapai setelah kelima struktur maksimum masing-masing terdiri dari 5 pengguna. Akun developer (yang memiliki proyek) tidak diperhitungkan dalam batas 5 pengguna untuk karena ada berbagai struktur penetapan harga.
Sebaliknya, jika sebuah proyek memiliki 15 pengguna di atas 5 struktur, pengguna tambahan dapat hanya ditambahkan ke 5 struktur yang ada, karena batas struktur memiliki sudah tercapai.
Batas kapasitas sandbox
Sandbox memiliki kapasitas terbatas untuk 3 level yang berbeda. Batas ditetapkan pada kueri per menit (QPM) kecuali dinyatakan lain.
Level API
Panggilan API dibatasi per project, per pengguna. Lihat API Referensi untuk informasi lebih lanjut tentang metode.
Metode API | Batas Kapasitas |
---|---|
devices.executeCommand |
10 QPM |
devices.get |
10 QPM |
devices.list |
5 QPM |
structures.get |
5 QPM |
structures.list |
5 QPM |
structures.rooms.get |
5 QPM |
structures.rooms.list |
5 QPM |
Tingkat perintah
Setiap perintah trait (devices.executeCommand
) dibatasi hingga 5 QPM per project,
dengan ukuran unit
maksimum 1 MB per pengguna, per perangkat.
Artinya, jika sebuah proyek memiliki 2 pengguna dengan masing-masing 2 perangkat (total 4 perangkat), perintah yang sama dapat dipanggil 5 kali dalam satu menit untuk masing-masing dari 4 perangkat tersebut.
Namun, jika sebuah proyek memiliki 2 pengguna dengan masing-masing 3 perangkat untuk total 6 perangkat,
perintah yang sama tidak dapat dipanggil 5 kali dalam satu menit untuk masing-masing
perangkat. Ini akan menghasilkan 15 QPM untuk setiap pengguna, jika
Batas kapasitas level API devices.executeCommand
untuk pengguna project adalah 10 QPM.
Tingkat instance perangkat
Selain itu, batas tingkat instance perangkat diterapkan di seluruh project dan
perintah (devices.executeCommand
) untuk perlindungan baterai perangkat. Batasan ini
diterapkan di tingkat QPM dan kueri per jam (QPH) dan tidak berlaku
pada metode API get
dan list
.
Misalnya, anggaplah Proyek A dan Proyek B memiliki akses ke perangkat, Perangkat A (mungkin pengguna telah mengizinkan dua paket komersial yang berbeda, integrasi yang menggunakan perangkat yang sama). Jika Proyek A telah mengirim 4 perintah ke Perangkat A dalam waktu satu menit, lalu Project B hanya dapat mengirim 1 perintah ke Perangkat A dalam pada menit yang sama sebelum batas kapasitas tingkat instance perangkat tercapai. Setelah itu perintah dari kedua Project ke Perangkat A di-throttle hingga akhir menit yang dimulai dengan perintah pertama ke Perangkat A.
Jika jenis perangkat tidak tercantum di bawah, berarti jenis perangkat tersebut tidak memiliki tingkat instance perangkat batas kapasitas.
Jenis Perangkat | Batas Kapasitas Instance Perangkat |
---|---|
TERmostat | 5 QPM atau 100 QPH |
KAMERA | 30 QPM atau 100 QPH |
DOORBELL | 30 QPM atau 100 QPH |
Error
Kode error berikut mungkin ditampilkan sehubungan dengan panduan ini:
Pesan Error | PPK | Pemecahan masalah |
---|---|---|
Kapasitas dibatasi. | RESOURCE_EXHAUSTED |
Setiap developer memiliki kuota yang membatasi jumlah panggilan yang dapat mereka lakukan. Jika melakukan lebih banyak panggilan daripada kuota, Anda akan menerima pesan Dibatasi kapasitas. Untuk memperbaikinya, kirim ulang panggilan setelah kuota habis. |
Lihat Referensi Kode Error API untuk daftar lengkap kode error API.