Semantic Search Across the Works
Natural-language search across the Bible and the other works, or one work with work. The list holds the 100 nearest chunks (a chunk is a few verses, about one Urantia paragraph long); each has similarity and strength (strong, related, weak), and meta.total is the length of that list, and meta.related counts those that are related or better. A reference gives those units with no vector. Each result carries its nearest Urantia paragraphs (urantiaParallelLimit, 0 to 10, default 3).
The Urantia parallels are semantic, not curated. They show the paragraphs closest in meaning by embedding similarity. They do not claim that two teachings are the same.
Accepts query parameters instead of a JSON body.
curl --request GET \
--url https://api.urantia.dev/works/search/semanticimport requests
url = "https://api.urantia.dev/works/search/semantic"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.urantia.dev/works/search/semantic', 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/works/search/semantic",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.urantia.dev/works/search/semantic"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.urantia.dev/works/search/semantic")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.urantia.dev/works/search/semantic")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"work": {
"id": "dhammapada",
"title": "The Dhammapada",
"tradition": "Buddhist"
},
"reference": "Dhp 3-5",
"text": "\"He abused me, he beat me, he defeated me, he robbed me,\"--in those who harbour such thoughts hatred will never cease. \"He abused me, he beat me, he defeated me, he robbed me,\"--in those who do not harbour such thoughts hatred will cease. For hatred does not cease by hatred at any time: hatred ceases by love, this is an old rule.",
"url": "https://www.gutenberg.org/cache/epub/2017/pg2017-images.html#:~:text=those%20who%20harbour%20such",
"similarity": 0.663218010380599,
"strength": "strong",
"urantiaParallels": [
{
"standardReferenceId": "131:3.6",
"paperTitle": "The World’s Religions",
"sectionTitle": "Buddhism",
"text": "“The fool has said in his heart, ‘Evil shall not overtake me’; but safety is found only when the soul craves reproof and the mind seeks wisdom. The wise man is a noble soul who is friendly in the midst of his enemies, tranquil among the turbulent, and generous among the grasping. Love of self is like weeds in a goodly field. Selfishness leads to grief; perpetual care kills. The tamed mind yields happiness. He is the greatest of warriors who overcomes and subdues himself. Restraint in all things is good. He alone is a superior person who esteems virtue and is observant of his duty. Let not anger and hate master you. Speak harshly of no one. Contentment is the greatest wealth. What is given wisely is well saved. Do not to others those things you would not wish done to you. Pay good for evil; overcome evil with the good.",
"similarity": 0.412424,
"rank": 1
},
{
"standardReferenceId": "140:8.5",
"paperTitle": "The Ordination of the Twelve",
"sectionTitle": "Thursday Afternoon on the Lake",
"text": "He never ceased to warn his disciples against the evil practice of retaliation; he made no allowance for revenge, the idea of getting even. He deplored the holding of grudges. He disallowed the idea of an eye for an eye and a tooth for a tooth. He discountenanced the whole concept of private and personal revenge, assigning these matters to civil government, on the one hand, and to the judgment of God, on the other. He made it clear to the three that his teachings applied to the individual, not the state. He summarized his instructions up to that time regarding these matters, as:",
"similarity": 0.401049,
"rank": 2
}
]
},
{
"work": {
"id": "bible",
"title": "The Bible (World English Bible)",
"tradition": "Jewish and Christian"
},
"reference": "Proverbs 10:12",
"text": "Hatred stirs up strife, but love covers all wrongs.",
"url": "https://ebible.org/eng-web/PRO10.htm#V12",
"similarity": 0.50763853796286,
"strength": "weak",
"urantiaParallels": [
{
"standardReferenceId": "131:2.11",
"paperTitle": "The World’s Religions",
"sectionTitle": "Judaism",
"text": "“Love your neighbor as yourself; bear a grudge against no man. Whatsoever you hate do to no man. Love your brother, for the Lord has said: ‘I will love my children freely.’ The path of the just is as a shining light which shines more and more until the perfect day. They who are wise shall shine as the brightness of the firmament and they who turn many to righteousness as the stars forever and ever. Let the wicked forsake his evil way and the unrighteous man his rebellious thoughts. Says the Lord: ‘Let them return to me, and I will have mercy on them; I will abundantly pardon.’",
"similarity": 0.491502,
"rank": 1
},
{
"standardReferenceId": "54:5.5",
"paperTitle": "Problems of the Lucifer Rebellion",
"sectionTitle": "The Wisdom of Delay",
"text": "4. While wrongdoing is always deleterious to a family, wisdom and love admonish the upright children to bear with an erring brother during the time granted by the affectionate father in which the sinner may see the error of his way and embrace salvation.",
"similarity": 0.466579,
"rank": 2
}
]
}
],
"meta": {
"page": 0,
"limit": 2,
"total": 100,
"totalPages": 50,
"related": 1
}
}{
"type": "https://urantia.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Paragraph not found"
}{
"type": "https://urantia.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Paragraph not found"
}{
"type": "https://urantia.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Paragraph not found"
}Query Parameters
1 - 500One work only: "bible" or a work id such as "dhammapada".
x >= 01 <= x <= 1000 <= x <= 10curl --request GET \
--url https://api.urantia.dev/works/search/semanticimport requests
url = "https://api.urantia.dev/works/search/semantic"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api.urantia.dev/works/search/semantic', 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/works/search/semantic",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$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://api.urantia.dev/works/search/semantic"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.urantia.dev/works/search/semantic")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.urantia.dev/works/search/semantic")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": [
{
"work": {
"id": "dhammapada",
"title": "The Dhammapada",
"tradition": "Buddhist"
},
"reference": "Dhp 3-5",
"text": "\"He abused me, he beat me, he defeated me, he robbed me,\"--in those who harbour such thoughts hatred will never cease. \"He abused me, he beat me, he defeated me, he robbed me,\"--in those who do not harbour such thoughts hatred will cease. For hatred does not cease by hatred at any time: hatred ceases by love, this is an old rule.",
"url": "https://www.gutenberg.org/cache/epub/2017/pg2017-images.html#:~:text=those%20who%20harbour%20such",
"similarity": 0.663218010380599,
"strength": "strong",
"urantiaParallels": [
{
"standardReferenceId": "131:3.6",
"paperTitle": "The World’s Religions",
"sectionTitle": "Buddhism",
"text": "“The fool has said in his heart, ‘Evil shall not overtake me’; but safety is found only when the soul craves reproof and the mind seeks wisdom. The wise man is a noble soul who is friendly in the midst of his enemies, tranquil among the turbulent, and generous among the grasping. Love of self is like weeds in a goodly field. Selfishness leads to grief; perpetual care kills. The tamed mind yields happiness. He is the greatest of warriors who overcomes and subdues himself. Restraint in all things is good. He alone is a superior person who esteems virtue and is observant of his duty. Let not anger and hate master you. Speak harshly of no one. Contentment is the greatest wealth. What is given wisely is well saved. Do not to others those things you would not wish done to you. Pay good for evil; overcome evil with the good.",
"similarity": 0.412424,
"rank": 1
},
{
"standardReferenceId": "140:8.5",
"paperTitle": "The Ordination of the Twelve",
"sectionTitle": "Thursday Afternoon on the Lake",
"text": "He never ceased to warn his disciples against the evil practice of retaliation; he made no allowance for revenge, the idea of getting even. He deplored the holding of grudges. He disallowed the idea of an eye for an eye and a tooth for a tooth. He discountenanced the whole concept of private and personal revenge, assigning these matters to civil government, on the one hand, and to the judgment of God, on the other. He made it clear to the three that his teachings applied to the individual, not the state. He summarized his instructions up to that time regarding these matters, as:",
"similarity": 0.401049,
"rank": 2
}
]
},
{
"work": {
"id": "bible",
"title": "The Bible (World English Bible)",
"tradition": "Jewish and Christian"
},
"reference": "Proverbs 10:12",
"text": "Hatred stirs up strife, but love covers all wrongs.",
"url": "https://ebible.org/eng-web/PRO10.htm#V12",
"similarity": 0.50763853796286,
"strength": "weak",
"urantiaParallels": [
{
"standardReferenceId": "131:2.11",
"paperTitle": "The World’s Religions",
"sectionTitle": "Judaism",
"text": "“Love your neighbor as yourself; bear a grudge against no man. Whatsoever you hate do to no man. Love your brother, for the Lord has said: ‘I will love my children freely.’ The path of the just is as a shining light which shines more and more until the perfect day. They who are wise shall shine as the brightness of the firmament and they who turn many to righteousness as the stars forever and ever. Let the wicked forsake his evil way and the unrighteous man his rebellious thoughts. Says the Lord: ‘Let them return to me, and I will have mercy on them; I will abundantly pardon.’",
"similarity": 0.491502,
"rank": 1
},
{
"standardReferenceId": "54:5.5",
"paperTitle": "Problems of the Lucifer Rebellion",
"sectionTitle": "The Wisdom of Delay",
"text": "4. While wrongdoing is always deleterious to a family, wisdom and love admonish the upright children to bear with an erring brother during the time granted by the affectionate father in which the sinner may see the error of his way and embrace salvation.",
"similarity": 0.466579,
"rank": 2
}
]
}
],
"meta": {
"page": 0,
"limit": 2,
"total": 100,
"totalPages": 50,
"related": 1
}
}{
"type": "https://urantia.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Paragraph not found"
}{
"type": "https://urantia.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Paragraph not found"
}{
"type": "https://urantia.dev/errors/not-found",
"title": "Not Found",
"status": 404,
"detail": "Paragraph not found"
}
