Time Series Types - Execute Batch
对多个时序类型执行批处理获取、创建、更新、删除操作。
POST https://{environmentFqdn}/timeseries/types/$batch?api-version=2020-07-31URI 参数
| 名称 | 在 | 必需 | 类型 | 说明 | 
|---|---|---|---|---|
| environment | path | True | string | 每个环境 FQDN,例如 10000000-0000-0000-0000-100000000109.env.timeseries.azure.com。 可以从 Get Environments API、Azure 门户或 Azure 资源管理器的响应中获取此域名。 | 
| api-version | query | True | string | 要用于客户端请求的 API 的版本。 当前支持的版本为“2020-07-31”。 | 
请求头
| 名称 | 必需 | 类型 | 说明 | 
|---|---|---|---|
| x-ms-client-request-id | string | 可选的客户端请求 ID。 服务记录此值。 允许服务跨服务跟踪操作,并允许客户联系有关特定请求的支持人员。 | |
| x-ms-client-session-id | string | 可选的客户端会话 ID。 服务记录此值。 允许服务跨服务跟踪一组相关操作,并允许客户联系有关特定请求组的支持人员。 | 
请求正文
| 名称 | 类型 | 说明 | 
|---|---|---|
| delete | 要删除的时序类型的定义。 | |
| get | 要返回的时序类型的定义。 | |
| put | 定义要更新或创建的时序类型。 | 
响应
| 名称 | 类型 | 说明 | 
|---|---|---|
| 200 OK | 操作成功。 标头 x-ms-request-id: string | |
| Other Status Codes | 意外错误。 标头 x-ms-request-id: string | 
安全性
azure_auth
Azure Active Directory OAuth2 流
					类型: 
					oauth2
					流向: 
					implicit
					授权 URL: 
					https://login.microsoftonline.com/common/oauth2/authorize
			
作用域
| 名称 | 说明 | 
|---|---|
| user_impersonation | 模拟用户帐户 | 
示例
| Types | 
| Types | 
| Types | 
| Types | 
| Types | 
TypesBatchDeleteByIds   
			示例请求
POST https://10000000-0000-0000-0000-100000000109.env.timeseries.azure.com/timeseries/types/$batch?api-version=2020-07-31
{
  "delete": {
    "typeIds": [
      "9250f816-faed-44c4-88e6-630e5eefa38b"
    ]
  }
}
示例响应
{
  "delete": [
    null
  ]
}TypesBatchDeleteByNames   
			示例请求
POST https://10000000-0000-0000-0000-100000000109.env.timeseries.azure.com/timeseries/types/$batch?api-version=2020-07-31
{
  "delete": {
    "names": [
      "TemperatureSensor"
    ]
  }
}
示例响应
{
  "delete": [
    null
  ]
}TypesBatchGetByIds   
			示例请求
POST https://10000000-0000-0000-0000-100000000109.env.timeseries.azure.com/timeseries/types/$batch?api-version=2020-07-31
{
  "get": {
    "typeIds": [
      "1be09af9-f089-4d6b-9f0b-48018b5f7393",
      "c1cb7a33-ed9b-4cf1-9958-f3162fed8ee8"
    ],
    "names": null
  }
}
示例响应
{
  "get": [
    {
      "timeSeriesType": {
        "id": "1be09af9-f089-4d6b-9f0b-48018b5f7393",
        "name": "DefaultType",
        "description": "Default type",
        "variables": {
          "EventCount": {
            "kind": "aggregate",
            "filter": null,
            "aggregation": {
              "tsx": "count()"
            }
          }
        }
      },
      "error": null
    },
    {
      "timeSeriesType": {
        "id": "c1cb7a33-ed9b-4cf1-9958-f3162fed8ee8",
        "name": "TemperatureSensor",
        "description": "This is a temperature sensor.",
        "variables": {
          "AverageTemperature": {
            "kind": "numeric",
            "value": {
              "tsx": "$event.Temperature.Double"
            },
            "filter": null,
            "aggregation": {
              "tsx": "avg($value)"
            }
          }
        }
      },
      "error": null
    }
  ]
}TypesBatchGetByNames   
			示例请求
POST https://10000000-0000-0000-0000-100000000109.env.timeseries.azure.com/timeseries/types/$batch?api-version=2020-07-31
{
  "get": {
    "names": [
      "DefaultType",
      "TemperatureSensor"
    ]
  }
}
示例响应
{
  "get": [
    {
      "timeSeriesType": {
        "id": "1be09af9-f089-4d6b-9f0b-48018b5f7393",
        "name": "DefaultType",
        "description": "Default type",
        "variables": {
          "EventCount": {
            "kind": "aggregate",
            "filter": null,
            "aggregation": {
              "tsx": "count()"
            }
          }
        }
      },
      "error": null
    },
    {
      "timeSeriesType": {
        "id": "c1cb7a33-ed9b-4cf1-9958-f3162fed8ee8",
        "name": "TemperatureSensor",
        "description": "This is a temperature sensor.",
        "variables": {
          "AverageTemperature": {
            "kind": "numeric",
            "value": {
              "tsx": "$event.Temperature.Double"
            },
            "filter": null,
            "aggregation": {
              "tsx": "avg($value)"
            }
          }
        }
      },
      "error": null
    }
  ]
}TypesBatchPut  
			示例请求
POST https://10000000-0000-0000-0000-100000000109.env.timeseries.azure.com/timeseries/types/$batch?api-version=2020-07-31
{
  "put": [
    {
      "id": "1be09af9-f089-4d6b-9f0b-48018b5f7393",
      "name": "DefaultType",
      "description": "My Default type",
      "variables": {
        "EventCount": {
          "kind": "aggregate",
          "filter": null,
          "aggregation": {
            "tsx": "count()"
          }
        }
      }
    },
    {
      "id": "c1cb7a33-ed9b-4cf1-9958-f3162fed8ee8",
      "name": "OutdoorTemperatureSensor",
      "description": "This is an outdoor temperature sensor.",
      "variables": {
        "AverageTemperature": {
          "kind": "numeric",
          "value": {
            "tsx": "$event.Temperature.Double"
          },
          "filter": {
            "tsx": "$event.Mode.String = 'outdoor'"
          },
          "aggregation": {
            "tsx": "avg($value)"
          }
        }
      }
    }
  ]
}
示例响应
{
  "put": [
    {
      "timeSeriesType": {
        "id": "1be09af9-f089-4d6b-9f0b-48018b5f7393",
        "name": "DefaultType",
        "description": "My Default type",
        "variables": {
          "EventCount": {
            "kind": "aggregate",
            "filter": null,
            "aggregation": {
              "tsx": "count()"
            }
          }
        }
      },
      "error": null
    },
    {
      "timeSeriesType": {
        "id": "c1cb7a33-ed9b-4cf1-9958-f3162fed8ee8",
        "name": "OutdoorTemperatureSensor",
        "description": "This is an outdoor temperature sensor.",
        "variables": {
          "AverageTemperature": {
            "kind": "numeric",
            "value": {
              "tsx": "$event.Temperature.Double"
            },
            "filter": {
              "tsx": "$event.Mode.String = 'outdoor'"
            },
            "aggregation": {
              "tsx": "avg($value)"
            }
          }
        }
      },
      "error": null
    }
  ]
}定义
| 名称 | 说明 | 
|---|---|
| Aggregate | 聚合变量表示任何聚合计算。 聚合变量不支持内插。 | 
| Boundary | 要用于内插的搜索范围的左侧和右侧的时间范围。 这在数据点缺失到输入搜索范围的开始或结束的情况下非常有用。 可以为 null。 | 
| Categorical | 分类变量表示需要根据有限定义值集发生次数或持续时间进行分析的信号。 | 
| Interpolation | 要对原始数据点执行的内插操作。 目前,仅允许对内插时序进行采样。 允许的聚合函数 - 例如:left($value)。 如果不需要应用内插,可以为 null。 | 
| Interpolation | 内插技术的类型:“Linear”或“Step”。 | 
| Numeric | 数值变量表示可以使用内插重新构造的单个连续数值信号。 | 
| Time | 分类变量中使用的类别。 类别由“label”和分配此标签的“values”定义。 | 
| Time | 表示默认类别。 | 
| Time | 时序类型定义用于对与时序实例关联的事件执行计算的变量或公式。 每个时序实例都与一种类型完全关联。 类型可以有一个或多个变量。 例如,时序实例的类型可能是温度传感器,它由变量平均温度、最小温度和最大温度组成。 | 
| Time | 特定时序类型的批处理操作的结果。 在操作成功时设置 Type 对象,并在操作失败时设置错误对象。 | 
| Tsi | 有关 API 错误的信息。 | 
| Tsi | 具有错误代码和消息的特定 API 错误。 | 
| Tsi | 其他错误信息。 | 
| Tsx | 以单个字符串形式编写的时序表达式(TSX)。 示例:“$event。Status.String='Good'“, ”avg($event.温度“。 请参阅有关如何编写时序表达式的文档。 | 
| Types | 请求对一批时序类型执行单个操作。 必须设置“get”、“put”或“delete”之一。 | 
| Types | 对一批时序类型的单个操作的响应。 将设置“get”、“put”或“delete”之一。 | 
| Types | 请求按 ID 或类型名称获取或删除时序类型。 必须设置“typeIds”或“names”之一。 | 
AggregateVariable 
			
			聚合变量表示任何聚合计算。 聚合变量不支持内插。
| 名称 | 类型 | 说明 | 
|---|---|---|
| aggregation | 当类型为“aggregate”时,聚合时序表达式用于表示需要使用事件属性(如“$event”)直接执行的聚合。温度”。 例如,计算温度变化范围的聚合可以写为:“max($event)。温度)-min($event.温度“。 | |
| filter | 筛选限制要考虑计算的事件数的事件。 示例:“$event。Status.String='Good'”。 自选。 | |
| kind | string: aggregate | 允许的“kind”值为 -“numeric”或“aggregate”。 虽然“numeric”允许指定重新构造信号的值和聚合它们的表达式,但“聚合”类型允许你直接聚合事件属性而不指定值。 | 
Boundary
要用于内插的搜索范围的左侧和右侧的时间范围。 这在数据点缺失到输入搜索范围的开始或结束的情况下非常有用。 可以为 null。
| 名称 | 类型 | 说明 | 
|---|---|---|
| span | string (duration) | 
CategoricalVariable 
			
			分类变量表示需要根据有限定义值集发生次数或持续时间进行分析的信号。
| 名称 | 类型 | 说明 | 
|---|---|---|
| categories | 分类变量中使用的类别。 类别由“label”和分配此标签的“values”定义。 | |
| defaultCategory | 表示默认类别。 | |
| filter | 筛选限制要考虑计算的事件数的事件。 示例:“$event。Status.String='Good'”。 自选。 | |
| interpolation | 分类变量仅支持“步骤”内插。 | |
| kind | string: categorical | 允许的“kind”值为 -“numeric”或“aggregate”。 虽然“numeric”允许指定重新构造信号的值和聚合它们的表达式,但“聚合”类型允许你直接聚合事件属性而不指定值。 | 
| value | 值时序表达式用于表示要分类的信号的值。 它只能计算为分类变量的“String”或“Long”类型。 | 
Interpolation
要对原始数据点执行的内插操作。 目前,仅允许对内插时序进行采样。 允许的聚合函数 - 例如:left($value)。 如果不需要应用内插,可以为 null。
| 名称 | 类型 | 说明 | 
|---|---|---|
| boundary | 要用于内插的搜索范围的左侧和右侧的时间范围。 这在数据点缺失到输入搜索范围的开始或结束的情况下非常有用。 可以为 null。 | |
| kind | 内插技术的类型:“Linear”或“Step”。 | 
InterpolationKind 
			
			内插技术的类型:“Linear”或“Step”。
| 值 | 说明 | 
|---|---|
| Linear | |
| Step | 
NumericVariable 
			
			数值变量表示可以使用内插重新构造的单个连续数值信号。
| 名称 | 类型 | 说明 | 
|---|---|---|
| aggregation | 当类型为“numeric”时,聚合时序表达式用于表示需要在$value表达式上执行的聚合。 这需要指定$value,并且只能在聚合函数中使用$value。 例如,计算最小$value的聚合写入为:“min($value)”。 | |
| filter | 筛选限制要考虑计算的事件数的事件。 示例:“$event。Status.String='Good'”。 自选。 | |
| interpolation | 要对原始数据点执行的内插操作。 目前,仅允许对内插时序进行采样。 允许的聚合函数 - 例如:left($value)。 如果不需要应用内插,可以为 null。 | |
| kind | string: numeric | 允许的“kind”值为 -“numeric”或“aggregate”。 虽然“numeric”允许指定重新构造信号的值和聚合它们的表达式,但“聚合”类型允许你直接聚合事件属性而不指定值。 | 
| value | 值时序表达式用于表示要聚合或内插的信号的值。 例如,事件中的温度值如下所示:“$event。Temperature.Double”。 | 
TimeSeriesAggregateCategory   
			
			分类变量中使用的类别。 类别由“label”和分配此标签的“values”定义。
| 名称 | 类型 | 说明 | 
|---|---|---|
| label | string | 将用于构造输出变量名称的类别的名称。 | 
| values | object[] | 类别映射到的值列表。 可以是字符串的唯一列表或长列表。 | 
TimeSeriesDefaultCategory   
			
			表示默认类别。
| 名称 | 类型 | 说明 | 
|---|---|---|
| label | string | 将分配给与“类别”中定义的任何值不匹配的默认类别的名称。 | 
TimeSeriesType  
			
			时序类型定义用于对与时序实例关联的事件执行计算的变量或公式。 每个时序实例都与一种类型完全关联。 类型可以有一个或多个变量。 例如,时序实例的类型可能是温度传感器,它由变量平均温度、最小温度和最大温度组成。
| 名称 | 类型 | 说明 | 
|---|---|---|
| description | string | 类型的说明。 可以为 null。 | 
| id | string | 不可变区分大小写的唯一类型标识符。 创建或更新请求时可以为 null,然后服务器生成 ID。 获取和删除操作时不为 null。 | 
| name | string | 用户为类型提供的唯一名称。 可变,而不是 null。 | 
| variables | object | 与类型关联的不同变量。 不为空,不为 null。 | 
TimeSeriesTypeOrError   
			
			特定时序类型的批处理操作的结果。 在操作成功时设置 Type 对象,并在操作失败时设置错误对象。
| 名称 | 类型 | 说明 | 
|---|---|---|
| error | 错误对象 - 在操作失败时设置。 | |
| timeSeriesType | 时序类型对象 - 在操作成功时设置。 | 
TsiError 
			
			有关 API 错误的信息。
| 名称 | 类型 | 说明 | 
|---|---|---|
| error | 具有错误代码和消息的特定 API 错误。 | 
TsiErrorBody  
			
			具有错误代码和消息的特定 API 错误。
| 名称 | 类型 | 说明 | 
|---|---|---|
| code | string | 独立于语言且可读的字符串,用于定义特定于服务的错误代码。 此代码用作响应中指定的 HTTP 错误代码的更具体的指示器。 可用于以编程方式处理特定错误案例。 | 
| details | 包含其他错误信息。 可以为 null。 | |
| innerError | 包含更具体的错误,可缩小原因范围。 可以为 null。 | |
| message | string | 人为可读的、与语言无关的错误表示形式。 它旨在帮助开发人员,不适合向最终用户公开。 | 
| target | string | 特定错误的目标(例如,错误中属性的名称)。 可以为 null。 | 
TsiErrorDetails  
			
			其他错误信息。
| 名称 | 类型 | 说明 | 
|---|---|---|
| code | string | 独立于语言且可读的字符串,用于定义特定于服务的错误代码。 此代码用作响应中指定的 HTTP 错误代码的更具体的指示器。 可用于以编程方式处理特定错误案例。 | 
| message | string | 人为可读的、与语言无关的错误表示形式。 它旨在帮助开发人员,不适合向最终用户公开。 | 
Tsx
以单个字符串形式编写的时序表达式(TSX)。 示例:“$event。Status.String='Good'“, ”avg($event.温度“。 请参阅有关如何编写时序表达式的文档。
| 名称 | 类型 | 说明 | 
|---|---|---|
| tsx | string | 以单个字符串形式编写的时序表达式(TSX)。 示例:“$event。Status.String='Good'“, ”avg($event.温度“。 请参阅有关如何编写时序表达式的文档。 | 
TypesBatchRequest  
			
			请求对一批时序类型执行单个操作。 必须设置“get”、“put”或“delete”之一。
| 名称 | 类型 | 说明 | 
|---|---|---|
| delete | 要删除的时序类型的定义。 | |
| get | 要返回的时序类型的定义。 | |
| put | 定义要更新或创建的时序类型。 | 
TypesBatchResponse  
			
			对一批时序类型的单个操作的响应。 将设置“get”、“put”或“delete”之一。
| 名称 | 类型 | 说明 | 
|---|---|---|
| delete | 请求中“delete”数组对应的错误对象列表 - 操作成功时为 null。 | |
| get | 根据请求中“get”数组的位置对应的类型或错误对象列表。 在操作成功时设置 Type 对象,并在操作失败时设置错误对象。 | |
| put | 根据请求中“put”数组的位置对应的类型或错误对象列表。 在操作成功时设置 Type 对象,并在操作失败时设置错误对象。 | 
TypesRequestBatchGetOrDelete    
			
			请求按 ID 或类型名称获取或删除时序类型。 必须设置“typeIds”或“names”之一。
| 名称 | 类型 | 说明 | 
|---|---|---|
| names | string[] | 要返回或删除的时序类型的名称列表。 | 
| typeIds | string[] | 要返回或删除的时序类型的 ID 列表。 |