Limity liczby kont użytkowników i częstotliwości

Device Access projekty są ograniczone przez limity dotyczące użytkowników, struktury i częstotliwości w zależności od środowiska oraz typu oferty handlowej.

Chcemy, by deweloperzy mogli zadbać o wygodę użytkowników, ale jednocześnie dbamy o to, by usługa i urządzenia Nest były zawsze dostępne dla użytkowników. Integracje, które wykonują dużą liczbę żądań w danym okresie, mogą wpływać na dostępność usług i urządzeń, dlatego interfejs SDM API stosuje limity liczby żądań. Ograniczenie liczby żądań ogranicza liczbę wywołań interfejsu API w danym okresie i zapobiega nadmiernemu wykorzystywaniu zasobów.

Limity według środowiska

Wszystkie projekty rozpoczynają się w środowisku   Piaskownica  . Piaskownica służy do oceny interfejsu SDM API i użytkowania osobistego, a limity są odpowiednio ograniczone. W przypadku środowisk o większej liczbie użytkowników, np.   komercyjnego rozwoju  , obowiązują inne limity.

Limity użytkowników piaskownicy

Konto dewelopera w piaskownicy jest ograniczone do 25 użytkowników w 5 strukturach we wszystkich projektach. Obowiązuje limit 3 projektów na konto.

Każdy z nich może mieć maksymalnie 5 użytkowników, więc limit użytkowników zostanie osiągnięty dopiero wtedy, gdy zostanie osiągnięty limit 5 użytkowników we wszystkich 5 strukturach. Konto dewelopera (do którego należy projekt) nie wliczają się do limitu 5 użytkowników struktury.

Jeśli natomiast projekt obejmuje 15 użytkowników w 5 strukturach, kolejnych użytkowników można dodawać tylko do istniejących 5 struktur, ponieważ limit tych struktur został już osiągnięty.

Limity liczby żądań w trybie piaskownicy

Liczba wyświetleń w piaskownicy jest ograniczona na 3 różnych poziomach. O ile nie zaznaczono inaczej, limity są ustawiane na liczbę zapytań na minutę (QPM).

Poziom API

Wywołania interfejsu API przez użytkownika są ograniczone w ramach projektu. Więcej informacji o poszczególnych metodach znajdziesz w dokumentacji API.

Metoda interfejsu API Ograniczenie liczby żądań
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

Poziom polecenia

Każde polecenie cechy (devices.executeCommand) jest ograniczone do 5 QPM na projekt na użytkownika na urządzenie.

Oznacza to, że jeśli w projekcie jest 2 użytkowników mających 2 urządzenia (każdy z nich jest łącznie 4 urządzeniami), to samo polecenie można wywołać 5 razy w ciągu minuty dla każdego z tych 4 urządzeń.

Jeśli jednak w projekcie jest 2 użytkowników, na których każde jest 3 urządzenia, to samo polecenie nie może zostać wywołane 5 razy w ciągu minuty na każdym z tych 6 urządzeń. Efektem jest 15 QPM na każdego użytkownika, gdy limit częstotliwości żądań na poziomie interfejsu API devices.executeCommand w przypadku użytkownika projektu wynosi 10 QPM.

Poziom instancji urządzenia

Dodatkowo limity na poziomie instancji urządzenia są wdrażane w różnych projektach i poleceniach (devices.executeCommand), aby zapewnić ochronę baterii urządzenia. Te limity obowiązują zarówno na poziomie QPM, jak i na poziomie zapytań na godzinę (QPH) i nie mają zastosowania do metod interfejsu API get ani list.

Załóżmy na przykład, że Projekt A i Projekt B mają dostęp do tego samego urządzenia – urządzenia A (być może użytkownik autoryzował 2 różne integracje komercyjne, które korzystają z tego samego urządzenia). Jeśli w ciągu minuty do urządzenia A zostały wysłane 4 polecenia z projektu A, wtedy Projekt B może wysłać tylko 1 polecenie do urządzenia A w tej samej minucie, zanim zostanie osiągnięty limit szybkości na poziomie instancji urządzenia. Od tego momentu polecenia z obu projektów do urządzenia A są ograniczane do końca minuty, która rozpoczęła się od pierwszego polecenia dla urządzenia A.

Jeśli typu urządzenia nie ma na liście poniżej, oznacza to, że nie ma ograniczeń szybkości na poziomie instancji urządzenia.

Typ urządzenia Limit liczby instancji urządzenia
TERMOSTAT 5 QPM lub 100 QPH
APARAT 30 QPM lub 100 QPH
DZWONEK 30 QPM lub 100 QPH

Błędy

W związku z tym przewodnikiem mogą wyświetlić się takie kody błędów:

Komunikat o błędzie RPC Rozwiązywanie problemów
Cena jest ograniczona. RESOURCE_EXHAUSTED Każdy deweloper ma ustalony limit wywołań, które może wykonać. Jeśli wykonasz więcej połączeń niż wynosi limit, otrzymasz komunikat o ograniczonej liczbie połączeń. Aby rozwiązać ten problem, prześlij wywołanie ponownie po wygaśnięciu limitu.

Pełną listę kodów błędów interfejsu API znajdziesz w dokumentacji błędów interfejsu API.