En Google, luchamos por la equidad racial de la comunidad negra. Más información

Límites de velocidad de datos

Queremos que los desarrolladores creen experiencias de usuario atractivas, pero también queremos que el servicio y los dispositivos de Nest estén siempre disponibles para el usuario. Los productos que realizan una gran cantidad de solicitudes en un período de tiempo determinado pueden afectar la disponibilidad del servicio y del dispositivo, por lo que aplicamos límites de tarifas. La limitación de velocidad restringe la cantidad de llamadas a la API durante un período de tiempo determinado.

Tipos de límites de tarifas

Hemos implementado dos clases de límites de tarifas. Los primeros límites son por dispositivo o estructura por hora. Estos límites se comparten entre todos los productos Works with Nest y están destinados a evitar la sobreutilización de los dispositivos. La segunda clase de límites son por token de acceso. Estos límites están diseñados para evitar la sobreutilización del servicio Nest.

Límites por dispositivo / estructura

Cada escritura en el modelo de datos requiere que el dispositivo se active y sincronice el estado. Esto puede afectar la duración de la batería, por lo que limitamos la cantidad de escrituras en dispositivos y estructuras. También monitoreamos el estado de la batería de todos los dispositivos. Si caen por debajo de cierto umbral, rechazaremos las solicitudes de escritura hasta que la batería se haya recargado.

Límites por token de acceso

Cada token de acceso también tiene un límite de velocidad asociado. El establecimiento de conexiones con el servicio conlleva algunos gastos generales, por lo que limitamos la cantidad de conexiones que un producto puede realizar en un período de tiempo específico.

Para las llamadas de transmisión REST y REST, cada token de acceso tiene un número limitado de llamadas. Los límites de velocidad de datos se aplican a las llamadas de lectura / escritura a través de REST y a las llamadas de lectura a través de la transmisión REST. Para evitar errores, le recomendamos que limite las solicitudes a una llamada por minuto, como máximo.

Respuesta de error

Al utilizar REST , recibirá un código de respuesta de 429 Demasiadas solicitudes.

Manejo de redireccionamientos 307

Al hacer REST llamadas, el producto tendrá que manejar 307 redirecciones. También conocido como reenvío de URL, una respuesta de redireccionamiento temporal 307 proporciona una nueva URL para que el navegador vuelva a enviar una solicitud.

Cuando ocurre una redirección 307, deberá realizar la llamada nuevamente con la nueva información de URL. Cuando haga esto, debe almacenar en caché el host y el número de puerto para usarlos en futuras llamadas con ese usuario / token de acceso. Recuerde, cada llamada cuenta para el límite de velocidad. Considere cómo interactúa su usuario con su producto. Algunos usuarios presionarán un botón o elegirán una configuración repetidamente, por lo que si realiza una llamada para cada acción del usuario, puede afectar los límites de tasa muy rápidamente. Si un usuario realiza una serie de cambios en rápida sucesión, solo debe realizar una llamada a la API para el último valor (más reciente).

Para obtener más información y un ejemplo, vea Cómo manejar las redirecciones .

Después de la redirección 307

Si está utilizando la información de la URL de redireccionamiento y obtiene un redireccionamiento 307 más adelante, debe seguir ese redireccionamiento.

Error de conexión

Si está utilizando la información de la URL almacenada en caché y obtiene un error de conexión (debido a que el host está fuera de servicio o el sitio está inactivo), debe volver a la URL base original.

Cambios en el límite de tarifa

A medida que aprendamos más sobre los patrones de uso y su impacto en el servicio, es posible que consideremos necesario modificar los límites de tarifas. Le recomendamos encarecidamente que cree sus productos para utilizar la cantidad mínima de llamadas necesarias para crear una experiencia de usuario atractiva y para hacer frente a las infracciones de los límites de frecuencia de forma adecuada.