Device Access Los proyectos están restringidos por el usuario, la estructura y los límites de frecuencia, según el entorno y el tipo de oferta comercial.
Queremos que los desarrolladores creen experiencias de usuario atractivas, pero también queremos que el servicio y los dispositivos Nest estén siempre disponibles para el usuario. Las integraciones que realizan una gran cantidad de solicitudes en un período determinado pueden afectar la disponibilidad del servicio y del dispositivo, por lo que la API de SDM aplica límites de frecuencia. El límite de frecuencia restringe la cantidad de llamadas a la API durante un período determinado y evita el uso excesivo de los recursos.
Límites por entorno
Todos los proyectos comienzan en el entorno de zona de pruebas . La zona de pruebas está destinada a la evaluación de la API de SDM y al uso personal, y los límites se restringen en consecuencia. Los entornos con bases de usuarios más grandes, como Desarrollo comercial , tienen límites diferentes.
Límites de usuarios de la zona de pruebas
Una cuenta de desarrollador en la zona de pruebas está limitada a 25 usuarios en 5 estructuras en todos los proyectos. Hay un límite de 3 proyectos por cuenta.
Las estructuras están limitadas a 5 usuarios cada una, por lo que el límite de usuarios solo se alcanzará una vez que las 5 estructuras estén al máximo con 5 usuarios cada una. La cuenta de desarrollador (que es propietaria del proyecto) no se incluye en el límite de 5 usuarios para una estructura.
Por el contrario, si un proyecto tiene 15 usuarios en 5 estructuras, solo se pueden agregar usuarios adicionales a las 5 estructuras existentes, ya que se alcanzó el límite de estructura.
Límites de frecuencia de la zona de pruebas
La zona de pruebas tiene un límite de frecuencia en 3 niveles diferentes. Los límites se establecen en consultas por minuto (QPM), a menos que se indique lo contrario.
Nivel de API
Las llamadas a la API están limitadas por proyecto y por usuario. Consulta la referencia de la API para obtener más información sobre los métodos individuales.
| Método de API | Límite de frecuencia |
|---|---|
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 |
Nivel de comando
Cada comando de atributo (devices.executeCommand) está limitado a 5 QPM por proyecto, por usuario y por dispositivo.
Eso significa que, si un proyecto tiene 2 usuarios con 2 dispositivos cada uno (4 dispositivos en total), se puede llamar al mismo comando 5 veces en un minuto para cada uno de esos 4 dispositivos.
Sin embargo, si un proyecto tiene 2 usuarios con 3 dispositivos cada uno para 6 dispositivos en total, no se podría llamar al mismo comando 5 veces en un minuto para cada uno de esos 6 dispositivos. Esto daría como resultado 15 QPM para cada usuario, cuando el límite de frecuencia a nivel de la API de devices.executeCommand para el usuario de un proyecto es de 10 QPM.
Nivel de instancia del dispositivo
Además, se implementan límites a nivel de la instancia del dispositivo en proyectos y comandos (devices.executeCommand) para la protección de la batería del dispositivo. Estos límites se aplican a los niveles de QPM y consultas por hora (QPH), y no se aplican a los métodos de API get y list.
Por ejemplo, supongamos que el proyecto A y el proyecto B tienen acceso al mismo dispositivo, el dispositivo A (quizás el usuario autorizó dos integraciones comerciales diferentes que usan el mismo dispositivo). Si el proyecto A envió 4 comandos al dispositivo A en un minuto, el proyecto B solo puede enviar 1 comando al dispositivo A en ese mismo minuto antes de que se alcance el límite de frecuencia a nivel de la instancia del dispositivo. En ese momento, se limita la frecuencia de los comandos de ambos proyectos al dispositivo A hasta el final del minuto que comenzó con el primer comando al dispositivo A.
Si un tipo de dispositivo no aparece en la siguiente lista, no tiene límites de frecuencia a nivel de la instancia del dispositivo.
| Tipo de dispositivo | Límite de frecuencia de la instancia del dispositivo |
|---|---|
| TERMOSTATO | 5 QPM o 100 QPH |
| CÁMARA | 30 QPM o 100 QPH |
| DOORBELL | 30 QPM o 100 QPH |
Errores
Es posible que se muestren los siguientes códigos de error en relación con esta guía:
| Mensaje de error | RPC | Solución de problemas |
|---|---|---|
| Se alcanzó el límite de frecuencia. | RESOURCE_EXHAUSTED |
Cada desarrollador tiene una cuota que limita la cantidad de llamadas que puede realizar. Si realizas más llamadas que tu cuota, recibirás el mensaje Se alcanzó el límite de frecuencia. Para solucionar este problema, vuelve a enviar la llamada una vez que venza la cuota. |
Consulta la Referencia de códigos de error de la API para ver la lista completa de códigos de error.