curl --request POST \
--url https://api.example.com/api/dq/rules/bulk-create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"table": "<string>",
"rules": [
{
"rule_name": "<string>",
"sql": "<string>",
"success_value": "<string>",
"rule_description": "",
"table": "<string>"
}
]
}
'import requests
url = "https://api.example.com/api/dq/rules/bulk-create"
payload = {
"table": "<string>",
"rules": [
{
"rule_name": "<string>",
"sql": "<string>",
"success_value": "<string>",
"rule_description": "",
"table": "<string>"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
table: '<string>',
rules: [
{
rule_name: '<string>',
sql: '<string>',
success_value: '<string>',
rule_description: '',
table: '<string>'
}
]
})
};
fetch('https://api.example.com/api/dq/rules/bulk-create', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/dq/rules/bulk-create",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'table' => '<string>',
'rules' => [
[
'rule_name' => '<string>',
'sql' => '<string>',
'success_value' => '<string>',
'rule_description' => '',
'table' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/dq/rules/bulk-create"
payload := strings.NewReader("{\n \"table\": \"<string>\",\n \"rules\": [\n {\n \"rule_name\": \"<string>\",\n \"sql\": \"<string>\",\n \"success_value\": \"<string>\",\n \"rule_description\": \"\",\n \"table\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/dq/rules/bulk-create")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"table\": \"<string>\",\n \"rules\": [\n {\n \"rule_name\": \"<string>\",\n \"sql\": \"<string>\",\n \"success_value\": \"<string>\",\n \"rule_description\": \"\",\n \"table\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/dq/rules/bulk-create")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"table\": \"<string>\",\n \"rules\": [\n {\n \"rule_name\": \"<string>\",\n \"sql\": \"<string>\",\n \"success_value\": \"<string>\",\n \"rule_description\": \"\",\n \"table\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"rule_name": "<string>",
"rule_description": "<string>",
"sql": "<string>",
"accepted": true,
"table": "<string>",
"external_id": "<string>",
"spark_sql": "<string>",
"success_value": "<string>",
"created_by": "<string>",
"approved_by": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"approved_at": "2023-11-07T05:31:56Z",
"is_created": false
}
]{
"error": "<string>",
"code": 500
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Bulk create data quality rules
Bulk create data quality rules for a table.
Required Role: nx1_quality
curl --request POST \
--url https://api.example.com/api/dq/rules/bulk-create \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"table": "<string>",
"rules": [
{
"rule_name": "<string>",
"sql": "<string>",
"success_value": "<string>",
"rule_description": "",
"table": "<string>"
}
]
}
'import requests
url = "https://api.example.com/api/dq/rules/bulk-create"
payload = {
"table": "<string>",
"rules": [
{
"rule_name": "<string>",
"sql": "<string>",
"success_value": "<string>",
"rule_description": "",
"table": "<string>"
}
]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
table: '<string>',
rules: [
{
rule_name: '<string>',
sql: '<string>',
success_value: '<string>',
rule_description: '',
table: '<string>'
}
]
})
};
fetch('https://api.example.com/api/dq/rules/bulk-create', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.example.com/api/dq/rules/bulk-create",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'table' => '<string>',
'rules' => [
[
'rule_name' => '<string>',
'sql' => '<string>',
'success_value' => '<string>',
'rule_description' => '',
'table' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.example.com/api/dq/rules/bulk-create"
payload := strings.NewReader("{\n \"table\": \"<string>\",\n \"rules\": [\n {\n \"rule_name\": \"<string>\",\n \"sql\": \"<string>\",\n \"success_value\": \"<string>\",\n \"rule_description\": \"\",\n \"table\": \"<string>\"\n }\n ]\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.example.com/api/dq/rules/bulk-create")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"table\": \"<string>\",\n \"rules\": [\n {\n \"rule_name\": \"<string>\",\n \"sql\": \"<string>\",\n \"success_value\": \"<string>\",\n \"rule_description\": \"\",\n \"table\": \"<string>\"\n }\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/dq/rules/bulk-create")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"table\": \"<string>\",\n \"rules\": [\n {\n \"rule_name\": \"<string>\",\n \"sql\": \"<string>\",\n \"success_value\": \"<string>\",\n \"rule_description\": \"\",\n \"table\": \"<string>\"\n }\n ]\n}"
response = http.request(request)
puts response.read_body[
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"rule_name": "<string>",
"rule_description": "<string>",
"sql": "<string>",
"accepted": true,
"table": "<string>",
"external_id": "<string>",
"spark_sql": "<string>",
"success_value": "<string>",
"created_by": "<string>",
"approved_by": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"approved_at": "2023-11-07T05:31:56Z",
"is_created": false
}
]{
"error": "<string>",
"code": 500
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
The access token received from the authorization server in the OAuth 2.0 flow.
Response
Rules created.
Unique ID of the data quality rule.
Name of the data quality rule.
Brief explanation of what the rule checks.
Trino SQL query used to validate the rule.
Whether you have accepted this rule.
The database table this rule applies to.
Uniform Resource Name (URN) of the assertion in DataHub.
Spark SQL query of the rule, if applicable.
Expected success condition for this rule.
Username or identifier of who created this rule.
Username of who approved this rule.
Timestamp when the rule was created.
Timestamp when the rule was approved.
True once the rule has been explicitly created (not just a suggestion).
Was this page helpful?

