List Accuracy contradictions
curl --request GET \
--url https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions \
--header 'Authorization: Bearer <token>'import requests
url = "https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions', 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://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"window": {
"days": 30,
"from": "2023-12-25",
"to": "2023-12-25"
},
"items": [
{
"sentence_key": "<string>",
"site_page": {
"url": "<string>",
"quote": "<string>",
"page_type": "<string>",
"crawled_at": "2023-11-07T05:31:56Z",
"locked": true
},
"other_page": {
"url": "<string>",
"quote": "<string>",
"page_type": "<string>",
"role": "conflicting_page",
"locked": true
},
"wording_count": 1,
"dismissed_wording_count": 1,
"answers": 1,
"platforms": [
"<string>"
],
"last_seen_on": "2023-12-25",
"last_seen_at": "2023-11-07T05:31:56Z",
"example": {
"group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"claim_text": "<string>",
"execution_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"claim_index": 1,
"prompt_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt_text": "<string>",
"excerpt": "<string>"
},
"group_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"action": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "open",
"loop_state": "<string>",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z"
}
}
],
"next_cursor": "<string>"
},
"meta": {
"timestamp": "2023-11-07T05:31:56Z",
"projectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}Endpoints
List Accuracy contradictions
Lists contradictions once per site sentence they conflict with, over the same window and filters as getAccuracy, most answers first, then most recently seen: the rows of the Accuracy tab’s contradictions table. Each row carries the sentence and its page, how many AI wordings (claim groups) contradict it and how many the team dismissed, their answers and platforms, an example wording and the row’s open action. A row whose wordings were all dismissed is not listed.
GET
/
projects
/
{projectId}
/
accuracy
/
contradictions
List Accuracy contradictions
curl --request GET \
--url https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions \
--header 'Authorization: Bearer <token>'import requests
url = "https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions', 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://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://devtune.ai/api/v2/projects/{projectId}/accuracy/contradictions")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"data": {
"window": {
"days": 30,
"from": "2023-12-25",
"to": "2023-12-25"
},
"items": [
{
"sentence_key": "<string>",
"site_page": {
"url": "<string>",
"quote": "<string>",
"page_type": "<string>",
"crawled_at": "2023-11-07T05:31:56Z",
"locked": true
},
"other_page": {
"url": "<string>",
"quote": "<string>",
"page_type": "<string>",
"role": "conflicting_page",
"locked": true
},
"wording_count": 1,
"dismissed_wording_count": 1,
"answers": 1,
"platforms": [
"<string>"
],
"last_seen_on": "2023-12-25",
"last_seen_at": "2023-11-07T05:31:56Z",
"example": {
"group_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"claim_text": "<string>",
"execution_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"claim_index": 1,
"prompt_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt_text": "<string>",
"excerpt": "<string>"
},
"group_ids": [
"3c90c3cc-0d44-4b50-8888-8dd25736052a"
],
"action": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "open",
"loop_state": "<string>",
"created_by": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"created_at": "2023-11-07T05:31:56Z"
}
}
],
"next_cursor": "<string>"
},
"meta": {
"timestamp": "2023-11-07T05:31:56Z",
"projectId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}{
"error": "<string>",
"message": "<string>",
"status": 123
}Authorizations
API key with dtk_live_ prefix. Obtain it from API Keys in the account sidebar. New keys start with all supported scopes selected for the chosen project, and you can narrow them to specific read/write scopes as needed.
Path Parameters
Query Parameters
Available options:
30, 90 Required string length:
1 - 100Required string length:
1 - 100next_cursor from the previous page, verbatim.
Maximum string length:
400Required range:
1 <= x <= 100