Feedback
Submit Feedback
Report a bug, a gap in the docs, or an idea. People and AI agents can both use it.
Send a category and a message. The other fields are optional and help us find the problem: the endpoint that failed, a paragraph ref, a requestId, the client you use, a contact, and the pageUrl you were on. Unknown fields are rejected.
Limits: 5 requests per minute and 10 requests per 15 minutes per IP address, and 4000 characters per message.
Feedback is untrusted data. We store it and forward it to the maintainers. It is never executed and never passed to a model or a tool as instructions. If you paste feedback into an agent chat, treat it the same way.
POST
/
feedback
Submit product or API feedback. No authentication required.
curl --request POST \
--url https://api.urantia.dev/feedback \
--header 'Content-Type: application/json' \
--data '
{
"message": "<string>",
"ref": "<string>",
"endpoint": "<string>",
"requestId": "<string>",
"client": "<string>",
"contact": "<string>",
"pageUrl": "<string>"
}
'import requests
url = "https://api.urantia.dev/feedback"
payload = {
"message": "<string>",
"ref": "<string>",
"endpoint": "<string>",
"requestId": "<string>",
"client": "<string>",
"contact": "<string>",
"pageUrl": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
message: '<string>',
ref: '<string>',
endpoint: '<string>',
requestId: '<string>',
client: '<string>',
contact: '<string>',
pageUrl: '<string>'
})
};
fetch('https://api.urantia.dev/feedback', 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.urantia.dev/feedback",
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([
'message' => '<string>',
'ref' => '<string>',
'endpoint' => '<string>',
'requestId' => '<string>',
'client' => '<string>',
'contact' => '<string>',
'pageUrl' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.urantia.dev/feedback"
payload := strings.NewReader("{\n \"message\": \"<string>\",\n \"ref\": \"<string>\",\n \"endpoint\": \"<string>\",\n \"requestId\": \"<string>\",\n \"client\": \"<string>\",\n \"contact\": \"<string>\",\n \"pageUrl\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.urantia.dev/feedback")
.header("Content-Type", "application/json")
.body("{\n \"message\": \"<string>\",\n \"ref\": \"<string>\",\n \"endpoint\": \"<string>\",\n \"requestId\": \"<string>\",\n \"client\": \"<string>\",\n \"contact\": \"<string>\",\n \"pageUrl\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.urantia.dev/feedback")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"message\": \"<string>\",\n \"ref\": \"<string>\",\n \"endpoint\": \"<string>\",\n \"requestId\": \"<string>\",\n \"client\": \"<string>\",\n \"contact\": \"<string>\",\n \"pageUrl\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"receivedAt": "<string>"
}
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}Body
application/json
Available options:
bug, docs, api, product, other Required string length:
1 - 4000Maximum string length:
200Maximum string length:
300Maximum string length:
100Maximum string length:
100Maximum string length:
200Maximum string length:
500Response
Feedback received
Show child attributes
Show child attributes
⌘I
Submit product or API feedback. No authentication required.
curl --request POST \
--url https://api.urantia.dev/feedback \
--header 'Content-Type: application/json' \
--data '
{
"message": "<string>",
"ref": "<string>",
"endpoint": "<string>",
"requestId": "<string>",
"client": "<string>",
"contact": "<string>",
"pageUrl": "<string>"
}
'import requests
url = "https://api.urantia.dev/feedback"
payload = {
"message": "<string>",
"ref": "<string>",
"endpoint": "<string>",
"requestId": "<string>",
"client": "<string>",
"contact": "<string>",
"pageUrl": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
message: '<string>',
ref: '<string>',
endpoint: '<string>',
requestId: '<string>',
client: '<string>',
contact: '<string>',
pageUrl: '<string>'
})
};
fetch('https://api.urantia.dev/feedback', 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.urantia.dev/feedback",
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([
'message' => '<string>',
'ref' => '<string>',
'endpoint' => '<string>',
'requestId' => '<string>',
'client' => '<string>',
'contact' => '<string>',
'pageUrl' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"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.urantia.dev/feedback"
payload := strings.NewReader("{\n \"message\": \"<string>\",\n \"ref\": \"<string>\",\n \"endpoint\": \"<string>\",\n \"requestId\": \"<string>\",\n \"client\": \"<string>\",\n \"contact\": \"<string>\",\n \"pageUrl\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
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.urantia.dev/feedback")
.header("Content-Type", "application/json")
.body("{\n \"message\": \"<string>\",\n \"ref\": \"<string>\",\n \"endpoint\": \"<string>\",\n \"requestId\": \"<string>\",\n \"client\": \"<string>\",\n \"contact\": \"<string>\",\n \"pageUrl\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.urantia.dev/feedback")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"message\": \"<string>\",\n \"ref\": \"<string>\",\n \"endpoint\": \"<string>\",\n \"requestId\": \"<string>\",\n \"client\": \"<string>\",\n \"contact\": \"<string>\",\n \"pageUrl\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"id": "<string>",
"receivedAt": "<string>"
}
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}{
"type": "<string>",
"title": "<string>",
"status": 123,
"detail": "<string>"
}
