POST
/v1/convai/knowledge-base/crawl
ElevenLabs APICreate Crawl Job
- Base URL
- https://api.elevenlabs.io
- Auth
- xi-api-key: <ELEVENLABS_API_KEY>
- Last verified
- 2026-09-03 · upstream hash matched
Actions
Agents: curl -H "Accept: text/markdown" this URL
→ 215 tokens · Vary: Accept
→ 215 tokens · Vary: Accept
Critical gotchas
Authentication uses the non-standard xi-api-key header, not Authorization: Bearer. Sending a Bearer token returns HTTP 401.
Text-to-speech responses are raw binary audio, not JSON. Write the body to a file (--output speech.mp3) rather than parsing it.
cURL
curl -X POST 'https://api.elevenlabs.io/v1/convai/knowledge-base/crawl' \ -H "xi-api-key: $ELEVENLABS_API_KEY" \ -H 'Content-Type: application/json' \ -d '{ "url": "string", "max_depth": 3, "max_pages": 1000, "pattern": "string", "sitemap_urls": [ "string" ], "parent_folder_id": "string", "enable_auto_sync": false, "auto_remove": false, "minimum_frequency_days": 0}'Get a free ElevenLabs API key → sponsored
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| url | body | string | Yes | URL to a page of documentation that the agent will have access to in order to interact with users. |
| max_depth | body | integer | No | Maximum depth for crawling (1-5), defaults to 3. |
| max_pages | body | integer | No | Maximum number of pages to crawl (1-10,000), defaults to 1000. |
| pattern | body | string | No | If set, only URLs that match this pattern are included. |
| sitemap_urls | body | string[] | No | List of URLs to crawl from sitemap (optional, overrides automatic URL discovery). |
| parent_folder_id | body | string | No | If set, the created document or folder will be placed inside the given folder. |
| enable_auto_sync | body | boolean | No | Whether to enable auto-sync for this URL document. |
| auto_remove | body | boolean | No | Whether to automatically remove the document if the URL becomes unavailable. Only applicable when auto-sync is enabled. |
| minimum_frequency_days | body | integer | No | Minimum frequency (in days) at which the underlying eligible documents are refreshed. The actual interval may be shorter, never longer. Defaults to 7, tightened to the parent folder's frequency if that is stricter. Only applicable when auto-sync is enabled. |
Response 200 OK
{
"id": "string",
"type": "discovery",
"root_folder_id": "string",
"status": "string",
"created_at": 0,
"folder_path": [
{
"id": "string"
}
]
}