Delete data sources
curl --request DELETE \
--url https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"data_sources": [
1335,
1336
]
}
'import requests
url = "https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources"
payload = { "data_sources": [1335, 1336] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({data_sources: [1335, 1336]})
};
fetch('https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources', 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.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'data_sources' => [
1335,
1336
]
]),
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.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources"
payload := strings.NewReader("{\n \"data_sources\": [\n 1335,\n 1336\n ]\n}")
req, _ := http.NewRequest("DELETE", 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.delete("https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"data_sources\": [\n 1335,\n 1336\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data_sources\": [\n 1335,\n 1336\n ]\n}"
response = http.request(request)
puts response.read_body{
"ok": true
}{
"error": "BAD_REQUEST",
"ok": false,
"status": 400,
"message": [
{
"message": "\"data_sources\" is required",
"path": [
"data_sources"
]
}
]
}{
"error": "UNAUTHORIZED",
"ok": false,
"status": 401,
"message": "Invalid token. Provide the valid account token."
}{
"message": "Resource not found",
"ok": false,
"error": "RESOURCE_NOT_FOUND",
"code": "RESOURCE_NOT_FOUND",
"status": 404
}Delete data sources
Deletes one or more data sources from an existing knowledge base.
DELETE
/
v1
/
ai
/
knowledge-bases
/
{knowledge_base_id}
/
data-sources
Delete data sources
curl --request DELETE \
--url https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"data_sources": [
1335,
1336
]
}
'import requests
url = "https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources"
payload = { "data_sources": [1335, 1336] }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.delete(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'DELETE',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({data_sources: [1335, 1336]})
};
fetch('https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources', 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.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_POSTFIELDS => json_encode([
'data_sources' => [
1335,
1336
]
]),
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.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources"
payload := strings.NewReader("{\n \"data_sources\": [\n 1335,\n 1336\n ]\n}")
req, _ := http.NewRequest("DELETE", 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.delete("https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"data_sources\": [\n 1335,\n 1336\n ]\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.wotnot.io/v1/ai/knowledge-bases/{knowledge_base_id}/data-sources")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Delete.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"data_sources\": [\n 1335,\n 1336\n ]\n}"
response = http.request(request)
puts response.read_body{
"ok": true
}{
"error": "BAD_REQUEST",
"ok": false,
"status": 400,
"message": [
{
"message": "\"data_sources\" is required",
"path": [
"data_sources"
]
}
]
}{
"error": "UNAUTHORIZED",
"ok": false,
"status": 401,
"message": "Invalid token. Provide the valid account token."
}{
"message": "Resource not found",
"ok": false,
"error": "RESOURCE_NOT_FOUND",
"code": "RESOURCE_NOT_FOUND",
"status": 404
}Authorizations
All of WotNot's APIs use Bearer token authentication. Send your account token as Bearer <token>. You can find it in Settings > Account Settings > Developer. Keep it on your server: anyone who has it can call the API as your account.
Path Parameters
The ID of the knowledge base to delete the data sources from.
Body
application/json
The data sources to delete.
The IDs of the data sources to delete. Each is the id you got back when the data source was added.
Response
The data sources were deleted. Returns ok set to true.
true when the request worked. Errors return false.
Example:
true
Last modified on October 22, 2026
Was this page helpful?