curl --request GET \
--url https://{host}/v2/workspaces/slug:storage/webhooks/v1/knowledge_bases/{knowledgeBaseId}/web_sources \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{host}/v2/workspaces/slug:storage/webhooks/v1/knowledge_bases/{knowledgeBaseId}/web_sources', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{host}/v2/workspaces/slug:storage/webhooks/v1/knowledge_bases/{knowledgeBaseId}/web_sources"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"object": "list",
"data": [
{
"id": "<string>",
"object": "knowledge_base.web_source",
"knowledge_base_id": "<string>",
"url": "<string>",
"created_at": 123,
"crawler_options": {},
"last_crawl_at": 123,
"next_crawl_at": 123,
"metrics": {
"pages_total": 1,
"pages_indexed": 1,
"pages_failed": 1,
"pages_pending": 1,
"pages_skipped": 1,
"last_run_status": "running",
"last_run_started_at": 123,
"last_run_completed_at": 123
},
"updated_at": 123
}
],
"total": 1,
"page": 2,
"limit": 50,
"has_more": true,
"summary": {
"total_web_pages": 1,
"unattributed_count": 1
}
}List crawl seeds
curl --request GET \
--url https://{host}/v2/workspaces/slug:storage/webhooks/v1/knowledge_bases/{knowledgeBaseId}/web_sources \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://{host}/v2/workspaces/slug:storage/webhooks/v1/knowledge_bases/{knowledgeBaseId}/web_sources', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://{host}/v2/workspaces/slug:storage/webhooks/v1/knowledge_bases/{knowledgeBaseId}/web_sources"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text){
"object": "list",
"data": [
{
"id": "<string>",
"object": "knowledge_base.web_source",
"knowledge_base_id": "<string>",
"url": "<string>",
"created_at": 123,
"crawler_options": {},
"last_crawl_at": 123,
"next_crawl_at": 123,
"metrics": {
"pages_total": 1,
"pages_indexed": 1,
"pages_failed": 1,
"pages_pending": 1,
"pages_skipped": 1,
"last_run_status": "running",
"last_run_started_at": 123,
"last_run_completed_at": 123
},
"updated_at": 123
}
],
"total": 1,
"page": 2,
"limit": 50,
"has_more": true,
"summary": {
"total_web_pages": 1,
"unattributed_count": 1
}
}Authorizations
User session JWT or instance API key (iak_*). Send as Authorization: Bearer <token>.
Path Parameters
Knowledge base id. Legacy physical prefix vs_ (the kb_ rename is deferred).
128^vs_[A-Za-z0-9-]+$Query Parameters
Page size. Server clamps to [1, 100] silently.
1 <= x <= 1001-based page number.
x >= 1Response
Paginated seeds, plus a knowledge-base-level summary
(§F-5): the unattributed residual (web pages with no seed
attribution) and the total web-page count.
Shared list-response envelope. Array is always data. Every
element carries its own object discriminator.
list Hide child attributes
Hide child attributes
128^seed_[A-Za-z0-9-]+$knowledge_base.web_source ^vs_[A-Za-z0-9-]+$Seed URL the crawler starts from.
Provider-specific crawl configuration passed through to the crawler (e.g. include/exclude URL patterns, auth headers, render mode). Validated by the crawler, not by this API. Projects PER DOMAIN on the store-level crawler: sources on the same hostname share these options.
Reserved. Currently always null - there is no per-seed
crawl-run ledger yet.
Reserved. Currently always null (no per-seed scheduled-run
computation yet).
Per-seed page counts, DB-derived from documents attributed
to this seed via parent_web_source_ids (multi-attribution,
§F-5). Independent of crawler reachability - these are
always available even when the crawler is unreachable.
Hide child attributes
Hide child attributes
x >= 0x >= 0x >= 0x >= 0Reserved. Currently always 0 (no per-seed "skipped" status).
x >= 0Reserved. Currently always null (no per-seed run ledger).
running, completed, failed, partial, null Reserved. Currently always null.
Reserved. Currently always null.
x >= 0x >= 11 <= x <= 100Was this page helpful?