Create Source Annotation
curl --request POST \
--url https://apigcp.trynia.ai/v2/sources/{source_id}/annotations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content": "<string>",
"kind": "note"
}
'import requests
url = "https://apigcp.trynia.ai/v2/sources/{source_id}/annotations"
payload = {
"content": "<string>",
"kind": "note"
}
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({content: '<string>', kind: 'note'})
};
fetch('https://apigcp.trynia.ai/v2/sources/{source_id}/annotations', 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://apigcp.trynia.ai/v2/sources/{source_id}/annotations",
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([
'content' => '<string>',
'kind' => 'note'
]),
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://apigcp.trynia.ai/v2/sources/{source_id}/annotations"
payload := strings.NewReader("{\n \"content\": \"<string>\",\n \"kind\": \"note\"\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://apigcp.trynia.ai/v2/sources/{source_id}/annotations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content\": \"<string>\",\n \"kind\": \"note\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://apigcp.trynia.ai/v2/sources/{source_id}/annotations")
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 \"content\": \"<string>\",\n \"kind\": \"note\"\n}"
response = http.request(request)
puts response.read_body{
"source_id": "<string>",
"trust_signals": {
"trust_level": "medium",
"trust_tier": "medium",
"scope": "private",
"is_global": false,
"is_verified": false,
"overlay_available": false,
"annotation_count": 0
},
"overlay": {
"summary": "<string>",
"kind": "custom",
"guidance": "<string>",
"recommended_queries": [
"<string>"
],
"updated_at": "<string>"
},
"annotations": [
{
"id": "<string>",
"content": "<string>",
"kind": "note",
"created_at": "<string>",
"updated_at": "<string>"
}
],
"created_at": "<string>",
"updated_at": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Sources
Create Source Annotation
POST
/
sources
/
{source_id}
/
annotations
Create Source Annotation
curl --request POST \
--url https://apigcp.trynia.ai/v2/sources/{source_id}/annotations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"content": "<string>",
"kind": "note"
}
'import requests
url = "https://apigcp.trynia.ai/v2/sources/{source_id}/annotations"
payload = {
"content": "<string>",
"kind": "note"
}
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({content: '<string>', kind: 'note'})
};
fetch('https://apigcp.trynia.ai/v2/sources/{source_id}/annotations', 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://apigcp.trynia.ai/v2/sources/{source_id}/annotations",
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([
'content' => '<string>',
'kind' => 'note'
]),
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://apigcp.trynia.ai/v2/sources/{source_id}/annotations"
payload := strings.NewReader("{\n \"content\": \"<string>\",\n \"kind\": \"note\"\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://apigcp.trynia.ai/v2/sources/{source_id}/annotations")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"content\": \"<string>\",\n \"kind\": \"note\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://apigcp.trynia.ai/v2/sources/{source_id}/annotations")
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 \"content\": \"<string>\",\n \"kind\": \"note\"\n}"
response = http.request(request)
puts response.read_body{
"source_id": "<string>",
"trust_signals": {
"trust_level": "medium",
"trust_tier": "medium",
"scope": "private",
"is_global": false,
"is_verified": false,
"overlay_available": false,
"annotation_count": 0
},
"overlay": {
"summary": "<string>",
"kind": "custom",
"guidance": "<string>",
"recommended_queries": [
"<string>"
],
"updated_at": "<string>"
},
"annotations": [
{
"id": "<string>",
"content": "<string>",
"kind": "note",
"created_at": "<string>",
"updated_at": "<string>"
}
],
"created_at": "<string>",
"updated_at": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
API key must be provided in the Authorization header
Path Parameters
Query Parameters
Source type hint
Available options:
repository, documentation, research_paper, huggingface_dataset, local_folder, slack, google_drive, connector Body
application/json
Response
Successful Response
Full curation state for a source.
Source identifier
Source type
Available options:
repository, documentation, research_paper, huggingface_dataset, local_folder, slack, google_drive, connector Derived trust signals
Show child attributes
Show child attributes
Curated overlay if present
Show child attributes
Show child attributes
Saved annotations for the source
Show child attributes
Show child attributes
Curation record creation timestamp (ISO)
Curation record update timestamp (ISO)
Was this page helpful?
⌘I

