O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Limites de taxa de dados

Queremos que os desenvolvedores criem experiências de usuário atraentes, mas também queremos que o serviço e os dispositivos Nest estejam sempre disponíveis para o usuário. Produtos que fazem um grande número de solicitações em um determinado período de tempo podem afetar o serviço e a disponibilidade do dispositivo, portanto, aplicamos limites de taxa. A limitação de taxa restringe o número de chamadas de API por um determinado período de tempo.

Tipos de limites de taxa

Implementamos duas classes de limites de taxa. Os primeiros são por limites dispositivo ou estrutura por hora. Esses limites são compartilhados por todos os produtos Works with Nest e têm como objetivo evitar o uso excessivo de dispositivos. A segunda classe de limites são por token de acesso. Esses limites são projetados para evitar a superutilização do serviço Nest.

Limites por dispositivo / estrutura

Cada gravação no modelo de dados requer que o dispositivo acorde e sincronize o estado. Isso pode afetar a vida útil da bateria, por isso limitamos o número de gravações em dispositivos e estruturas. Também monitoramos o estado da bateria de todos os dispositivos. Se eles caírem abaixo de um determinado limite, rejeitaremos as solicitações de gravação até que a bateria seja recarregada.

Limites por token de acesso

Cada token de acesso também possui um limite de taxa associado. Estabelecer conexões com o serviço incorre em alguma sobrecarga, portanto, limitamos o número de conexões que um produto pode fazer em um período de tempo específico.

Para chamadas de streaming REST e REST, cada token de acesso tem um número limitado de chamadas. Os limites de taxa de dados se aplicam a chamadas de leitura / gravação via REST e em chamadas de leitura via streaming REST. Para evitar erros, recomendamos que você limite as solicitações a uma chamada por minuto, no máximo.

Resposta de erro

Ao usar RESTO você receberá um código de resposta de 429 Too muitos pedidos.

Tratamento de redirecionamentos 307

Ao fazer RESTO chamadas, o produto terá de lidar com 307 redirecionamentos. Também conhecido como encaminhamento de URL, uma resposta de redirecionamento temporário 307 fornece um novo URL para o navegador reenviar uma solicitação.

Quando ocorrer um redirecionamento 307, você precisará fazer a chamada novamente com as novas informações de URL. Ao fazer isso, você deve armazenar em cache o host e o número da porta para uso em chamadas futuras com esse usuário / token de acesso. Lembre-se de que cada chamada conta para o limite da taxa. Considere como seu usuário está interagindo com seu produto. Alguns usuários pressionam um botão ou escolhem uma configuração repetidamente, portanto, se você fizer uma chamada para cada ação do usuário, isso pode afetar os limites de taxa muito rapidamente. Se um usuário fizer uma série de alterações em rápida sucessão, você deve fazer uma chamada de API apenas para o último valor (mais recente).

Para mais informações e um exemplo, consulte Como lidar com redirecionamentos .

Após 307 redirecionamento

Se você estiver usando as informações do URL de redirecionamento e obtiver um redirecionamento 307 posteriormente, deverá seguir esse redirecionamento.

Erro de conexão

Se você estiver usando as informações do URL em cache e obtiver um erro de conexão (devido ao host fora de serviço ou site inativo), você deve reverter para o URL base original.

Alterações de limite de taxa

À medida que aprendemos mais sobre os padrões de uso e seu impacto no serviço, podemos achar necessário modificar os limites de taxa. Recomendamos enfaticamente que você crie seus produtos para usar o número mínimo de chamadas necessárias para construir uma experiência de usuário atraente e para lidar com as violações do limite de taxa de maneira adequada.