1. 接口描述
接口请求域名: wedata.tencentcloudapi.com 。
创建质量规则接口
默认接口请求频率限制:20次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:CreateRule。 |
Version | 是 | String | 公共参数,本接口取值:2021-08-20。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表。 |
ProjectId | 否 | String | 项目id 示例值:123456 |
RuleGroupId | 否 | Integer | 规则组Id 示例值:123456 |
Name | 否 | String | 规则名称 示例值:rule1 |
TableId | 否 | String | 数据表ID 示例值:802yuhefwo08yih2 |
RuleTemplateId | 否 | Integer | 规则模板列表 示例值:123456 |
Type | 否 | Integer | 规则类型 1.系统模版, 2.自定义模版, 3.自定义SQL 示例值:1 |
QualityDim | 否 | Integer | 规则所属质量维度(1:准确性,2:唯一性,3:完整性,4:一致性,5:及时性,6:有效性 示例值:1 |
SourceObjectDataTypeName | 否 | String | 源字段详细类型,int、string 示例值:int |
SourceObjectValue | 否 | String | 源字段名称 示例值:name |
ConditionType | 否 | Integer | 检测范围 1.全表 2.条件扫描 示例值:1 |
ConditionExpression | 否 | String | 条件扫描WHERE条件表达式 示例值:dt=1 |
CustomSql | 否 | String | 自定义SQL 示例值:select count(*) from person |
CompareRule | 否 | CompareRule | 报警触发条件 示例值:{ "Items": [ { "CompareType": 1, "Operator": ">", "ValueComputeType": 1, "ValueList": [ { "ValueType": 3, "Value": "0" } ] } ], "CycleStep": 1, "ComputeExpression": "0" } |
AlarmLevel | 否 | Integer | 报警触发级别 1.低, 2.中, 3.高 示例值:1 |
Description | 否 | String | 规则描述 示例值:demo |
DatasourceId | 否 | String | 数据源Id 示例值:123456 |
DatabaseId | 否 | String | 数据库Id 示例值:297ygefhi80uih2o |
TargetDatabaseId | 否 | String | 目标库Id 示例值:0u79hf2ojonjke8 |
TargetTableId | 否 | String | 目标表Id 示例值:80y23rhgufujhbwfeu89 |
TargetConditionExpr | 否 | String | 目标过滤条件表达式 示例值:dt=${yyyymmdd} |
RelConditionExpr | 否 | String | 源字段与目标字段关联条件on表达式 示例值:a.age=b.age |
FieldConfig | 否 | RuleFieldConfig | 自定义模版sql表达式字段替换参数 示例值:{ "TableConfig": [ { "DatabaseId": "NW0VL_YPESvi8w", "DatabaseName": "default", "TableId": "EHdPET2IKQ2KBhGw", "TableName": "dq_student", "TableKey": "table_1", "FieldConfig": [ { "FieldKey": "table_1.column_1", "FieldDataType": "int", "FieldValue": "id" } ] } ], "WhereConfig": [ { "FieldKey": "param_1", "FieldDataType": "int", "FieldValue": "id" } ] } |
TargetObjectValue | 否 | String | 目标字段名称 CITY 示例值:city |
SourceEngineTypes.N | 否 | Array of Integer | 该规则支持的执行引擎列表 示例值:[1] |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
Data | Rule | 规则 注意:此字段可能返回 null,表示取不到有效值。 示例值:{ "RuleId": 1, "RuleGroupId": 1, "TableId": "E-UEBWQB-XRjERluUg", "TableName": "dq", "DatabaseId": "roeqgaBtT4m22RyjnMQ", "DatasourceId": 6789789, "Name": "测试", "Type": 1, "RuleTemplateId": 1, "RuleTemplateContent": "描述", "QualityDim": 1, "SourceObjectType": 1, "SourceObjectDataType": 1, "SourceObjectDataTypeName": "int", "SourceObjectValue": "age", "ConditionType": 1, "ConditionExpression": "pt=substring('${yyyyMMddHHmmss-1H}',1,10)", "CustomSql": "SELECT id,name FROM at_hive_bj .at_hive_22 ;", "CreateTime": "2024-02-22 21:49:55", "TableOwnerName": "AUTO_TEST", "SourceEngineTypes": [ 2, 4, 16 ], "ExecStrategy": { "CycleStep": null, "CycleType": null, "DelayTime": null, "EndTime": null, "ExecEngineType": null, "ExecPlan": null, "ExecQueue": null, "ExecutorGroupId": null, "ExecutorGroupName": null, "MonitorType": 2, "RuleGroupId": null, "RuleId": 1263, "RuleName": "field_minimum_trigger_fail", "StartTime": null, "TaskAction": null, "Tasks": [ { "TaskId": "20240205135835", "TaskName": "at_qualire_task_1708606293AquG", "WorkflowId": "1c2a85c6-d181-11eeb-b8cef68a6637" } ] }, "Subscription": { "Receivers": [ { "ReceiverName": "yukzhang", "ReceiverOwnerUserId": null, "ReceiverUserId": 100581064 } ], "RuleGroupId": null, "RuleId": 125, "RuleName": null, "SubscribeType": [ 1 ], "WebHooks": [] }, "CompareRule": { "Items": [ { "CompareType": 1, "Operator": ">", "ValueComputeType": 1, "ValueList": [ { "ValueType": 3, "Value": "0" } ] } ], "CycleStep": 1 }, "AlarmLevel": 2, "Description": "测试", "Operator": "zhangsan", "TargetDatabaseId": "6788897uigygh967q23e", "TargetDatabaseName": "test", "TargetTableId": "y8o97hufe378qygfvbqd", "TargetTableName": "dq", "TargetConditionExpr": "ct='${yyyy-mm-dd-1}'", "RelConditionExpr": "sourceTable.id=targetTable.id", "FieldConfig": { "TableConfig": [ { "DatabaseId": "NW0VL_YYPESvi8w", "DatabaseName": "default", "TableId": "EHdPET2IKQ2KBhGw", "TableName": "dq_student", "TableKey": "table_1", "FieldConfig": [ { "FieldKey": "table_1.column_1", "FieldDataType": "int", "FieldValue": "id" } ] } ], "WhereConfig": [ { "FieldKey": "param_1", "FieldDataType": "int", "FieldValue": "id" } ] }, "MultiSourceFlag": true, "WhereFlag": true, "TemplateSql": "select count(${table_1.column_1}) from ${table_1}", "SubQualityDim": 1, "TargetObjectType": 1, "TargetObjectDataType": 1, "TargetObjectDataTypeName": "name", "TargetObjectValue": "value" } |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 创建质量规则接口
创建质量规则组中单个规则
输入示例
POST / HTTP/1.1
Host: wedata.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateRule
<公共请求参数>
{
"ProjectId": "11114192353510111488",
"RuleGroupId": 1,
"Name": "autotest_s3mC",
"TableId": "E-UEBWQB-XRjERluUg",
"RuleTemplateId": 1,
"Type": 1,
"QualityDim": 1,
"SourceObjectDataTypeName": "int",
"SourceObjectValue": "age",
"ConditionType": 1,
"ConditionExpression": "pt=substring('${yyyyMMddHHmmss-1H}',1,10)",
"CustomSql": "SELECT id,name FROM `at_hive_bj`.`at_hive_22`;",
"CompareRule": {
"Items": [
{
"CompareType": 1,
"Operator": ">",
"ValueComputeType": 1,
"ValueList": [
{
"ValueType": 3,
"Value": "0"
}
]
}
],
"CycleStep": 1,
"ComputeExpression": "0"
},
"AlarmLevel": 1,
"Description": "测试",
"DatasourceId": "678990",
"DatabaseId": "97yuhijbkh08y97uhi",
"TargetDatabaseId": "97yuhijbkh08y97uhi",
"TargetTableId": "E-UEBWQB-XRjERluUg",
"TargetConditionExpr": "ct='${yyyy-mm-dd-1}'",
"RelConditionExpr": "sourceTable.id=targetTable.id",
"FieldConfig": {
"TableConfig": [
{
"DatabaseId": "NW0VL_YYPESvi8w",
"DatabaseName": "default",
"TableId": "EHdPET2IKQ2KBhGw",
"TableName": "dq_student",
"TableKey": "table_1",
"FieldConfig": [
{
"FieldKey": "table_1.column_1",
"FieldDataType": "int",
"FieldValue": "id"
}
]
}
],
"WhereConfig": [
{
"FieldKey": "param_1",
"FieldDataType": "int",
"FieldValue": "id"
}
]
},
"TargetObjectValue": "value",
"SourceEngineTypes": [
2,
4
]
}
输出示例
{
"Response": {
"Data": {
"RuleId": 1,
"RuleGroupId": 1,
"TableId": "E-UEBWsQB-XRjERluUg",
"TableName": "dq",
"DatabaseId": "roeqgaBtT4m22RyjnMQ",
"DatasourceId": 6789789,
"Name": "测试",
"Type": 1,
"RuleTemplateId": 1,
"RuleTemplateContent": "描述",
"QualityDim": 1,
"SourceObjectType": 1,
"SourceObjectDataType": 1,
"SourceObjectDataTypeName": "int",
"SourceObjectValue": "age",
"ConditionType": 1,
"ConditionExpression": "pt=substring('${yyyyMMddHHmmss-1H}',1,10)",
"CustomSql": "SELECT id,name FROM `at_hive_bj`.`at_hive_22`;",
"CreateTime": "2024-02-22 21:49:55",
"TableOwnerName": "AUTO_TEST",
"SourceEngineTypes": [
2,
4,
16
],
"ExecStrategy": {
"CycleStep": null,
"CycleType": null,
"DelayTime": null,
"EndTime": null,
"ExecEngineType": null,
"ExecPlan": null,
"ExecQueue": null,
"ExecutorGroupId": null,
"ExecutorGroupName": null,
"MonitorType": 2,
"RuleGroupId": null,
"RuleId": 1263,
"RuleName": "field_minimum_trigger_fail",
"StartTime": null,
"TaskAction": null,
"Tasks": [
{
"TaskId": "20240205135835",
"TaskName": "at_qualire_task_1708606293AquG",
"WorkflowId": "1c2a85c6-d181-11eeb-b8cef68a6637"
}
]
},
"Subscription": {
"Receivers": [
{
"ReceiverName": "yukzhang",
"ReceiverUserId": 100581064
}
],
"RuleGroupId": null,
"RuleId": 125,
"RuleName": null,
"SubscribeType": [
1
],
"WebHooks": []
},
"CompareRule": {
"Items": [
{
"CompareType": 1,
"Operator": ">",
"ValueComputeType": 1,
"ValueList": [
{
"ValueType": 3,
"Value": "0"
}
]
}
],
"CycleStep": 1
},
"AlarmLevel": 2,
"Description": "测试",
"Operator": "zhangsan",
"TargetDatabaseId": "6788897uigygh967q23e",
"TargetDatabaseName": "test",
"TargetTableId": "y8o97hufe378qygfvbqd",
"TargetTableName": "dq",
"TargetConditionExpr": "ct='${yyyy-mm-dd-1}'",
"RelConditionExpr": "sourceTable.id=targetTable.id",
"FieldConfig": {
"TableConfig": [
{
"DatabaseId": "NW0VL_YYPESvi8w",
"DatabaseName": "default",
"TableId": "EHdPET2IKQ2KBhGw",
"TableName": "dq_student",
"TableKey": "table_1",
"FieldConfig": [
{
"FieldKey": "table_1.column_1",
"FieldDataType": "int",
"FieldValue": "id"
}
]
}
],
"WhereConfig": [
{
"FieldKey": "param_1",
"FieldDataType": "int",
"FieldValue": "id"
}
]
},
"MultiSourceFlag": true,
"WhereFlag": true,
"TemplateSql": "select count(${table_1.column_1}) from ${table_1}",
"SubQualityDim": 1,
"TargetObjectType": 1,
"TargetObjectDataType": 1,
"TargetObjectDataTypeName": "name",
"TargetObjectValue": "value"
},
"RequestId": "e447b6ad-c3c3-44b5-b473-dbfc39591f93"
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
FailedOperation | 操作失败。 |
InvalidParameter.DuplicateName | 名称重复。 |
InvalidParameter.ServiceIsBusy | 服务繁忙,请稍后重试。 |