APIs de consulta do Azure Time Series Insights Gen2

Visão geral

As APIs de consulta são constituídas por três APIs REST, uma API para eventos, séries e agregações.

As APIs de Consulta retornam o esquema de eventos e as contagens de eventos em um intervalo de tempo especificado por meio de solicitações HTTP GET com paginação opcional. As informações de série e de série agregada também são expostas por meio de operações GET com paginação opcional.

API Descrição
Obter API de Eventos Retorna uma lista de eventos brutos que correspondem ao intervalo de pesquisa e predicado.
Obter API de Série Habilita a consulta e a recuperação de dados do Time Series Insights de eventos capturados usando dados gravados na transmissão por meio das variáveis definidas no modelo ou fornecidas embutidas.
API de série agregada Habilita a consulta e a recuperação de dados do Time Series Insights de eventos capturados agregando dados registrados usando as funções de agregação ou de exemplo.

As APIs também dão suporte a uma variedade de operações personalizadas especificadas por meio do corpo JSON da solicitação HTTP. As definições de consulta podem ser usadas para operações comuns.

Importante

Respostas de erro

Se a execução da consulta falhar, o conteúdo da resposta JSON conterá uma resposta de erro em conformidade com a seguinte estrutura:

{
    "error" : {
        "code" : "...",
        "message" : "...",
        "innerError" : {  
            "code" : "...",
            "message" : "...",
        }
    }
}

Aqui, innerError é opcional. Além de erros básicos, como solicitação malformada, os seguintes erros são retornados:

Código http status Código do erro Mensagem de erro de exemplo Possíveis códigos innerError
400 InvalidApiVersion Não há suporte para a versão da API '2016'. As versões com suporte são '2016-12-12', '2018-11-01-preview'. -
400 InvalidUrl A URL de solicitação '/a/b' não pôde ser analisada. -
400 InvalidInput A consulta fornecida 'aggregate' não é válida. As consultas com suporte são 'getEvents', 'getSeries','aggregateSeries'. InvalidQueryType
400 InvalidInput A expressão de série temporal '$event.temperature.Double > 0' em 'projectedVariables.temperature.value' não é uma expressão de referência de propriedade válida. InvalidPropertyReferenceExpression
400 InvalidInput A expressão de série temporal '$event.temperature.Double' em 'projectedVariables.temperature.filter' é inválida. Só pode ser uma expressão de predicado que retorna um booliano. InvalidPredicateExpression
400 InvalidInput A expressão de série temporal '$event.temperature.Double' em 'projectedVariables.temperature.aggregation' é inválida. Ele não continha uma expressão de agregação. InvalidAggregateExpression
400 InvalidInput A expressão de série temporal '$event.temperature.Double > 0' em 'projectedVariables.temperature.value' não é uma expressão de valor válida do tipo 'numérico'. InvalidValueExpression
400 InvalidInput A expressão de série temporal de valor em 'projectedVariables.temperature.value' não deve ser especificada ou deve ser nula para variável do tipo 'aggregate'. ValueExpressionShouldNotBeSpecified
400 InvalidInput A expressão de série temporal de valor em 'projectedVariables.temperature.value' deve ser especificada para o tipo de variável 'numeric'. ValueExpressionShouldBeSpecified
400 InvalidInput O tipo de variável 'aggregate' é inválido para a expressão 'min($value)' em 'projectedVariables.temperature.aggregation'. InvalidVariableKind
400 InvalidInput O intervalo de tempo '00.00:01' em 'interval' não é um formato de timespan ISO8601 válido. InvalidTimeSpanFormat
400 InvalidInput A instância com timeSeriesId '["ABC123"]' não foi encontrada. InstanceNotFound
400 InvalidInput A instância com o nome 'timeSeriesName' não foi encontrada. InstanceNotFound
400 InvalidInput A instância com timeSeriesId '["ABC321"]' não pode ser excluída. Já há eventos ingeridos associados a essa ID de série temporal. CannotDeleteInstance
400 InvalidInput O ambiente com a ID '5e19f688-83fb-4aee-8321-5c123ed016b7' não dá suporte a APIs de consulta de série temporal. TimeSeriesQueryNotSupported
400 InvalidInput A variável projetada com o nome 'temperature' não foi encontrada nas definições de tipo ou variável embutida. ProjectedVariableNotFound
400 InvalidInput Não é possível upsert type with ID '7e19g688-83fb-4aee-8321-5c123ed016b7' e name 'ABC123'. Esse nome já é usado pelo tipo com a ID '6e19g688-83fb-4aee-8321-5c123ed016b7'. NameAlreadyExists
400 InvalidInput Não é possível upsert hierarchy with ID '4e19g688-83fb-4aee-8321-7c123ed016b7' and name 'XYZ123'. Esse nome já é usado pela hierarquia com a ID '8e39g688-83fb-4aee-8321-5c123ed016b7'. HierarchyNotDefined
400 InvalidInput O número de instâncias excedeu o limite de '1.000.000'. NumberOfInstancesExceededLimit
400 InvalidInput O número de tipos excedeu o limite de '1000'. NumberOfTypesExceededLimit
400 InvalidInput O número de hierarquias excedeu o limite de '32'. NumberOfHierarchiesExceededLimit
400 InvalidInput O tamanho da entidade é maior que o tamanho máximo permitido '16.384'. ObjectSizeExceededLimit
400 InvalidInput O nome do objeto 'ABC123' com comprimento '6' excede o limite máximo de caracteres permitido de '5'. NameExceededLimit
408 RequestTimeout A solicitação atingiu o tempo limite após '30' segundos. BatchRequestSizeExceededLimit
503 TooManyRequests Contagem de solicitações simultâneas de '30' excedida para o ambiente '95880732-01b9-44ea-8d2d-4d764dfe1904'. EnvRequestLimitExceeded

Confira também

  • Para obter mais informações sobre o registro de aplicativo e o modelo de programação do Azure Active Directory, consulte Azure Active Directory para desenvolvedores.

  • Para saber mais sobre os parâmetros de solicitação e autenticação, leia Autenticação e autorização.

  • As ferramentas que auxiliam no teste de solicitações e respostas HTTP incluem:

  • Fiddler. Esse proxy de depuração da Web gratuito pode interceptar suas solicitações REST, para que você possa diagnosticar as mensagens de solicitação e resposta HTTP.

  • JWT.io. Você pode usar essa ferramenta para despejar rapidamente as declarações em seu token de portador e, em seguida, validar seu conteúdo.

  • O Postman. Essa é uma ferramenta gratuita de teste de solicitação HTTP e resposta para depuração de APIs REST.

  • Saiba mais sobre Azure Time Series Insights Gen2 examinando a documentação do Gen2.