{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Kataven","colors":{"primary":"#2563EB","light":"#60A5FA","dark":"#1E40AF"},"logo":{"light":"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/logo.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=6cf130449ec06609915faad2826a4c60","dark":"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/logo-dark.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=7425881c08adee79bcc1e99cdbdf111c"},"favicon":"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/favicon.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=dd648daf26b271ad7b55508d49d97e41","api":{"openapi":"api-spec/openapi.yaml"},"navbar":{"links":[{"href":"https://hub.kataven.ai","label":"Dashboard"}],"primary":{"type":"button","label":"Get an API key","href":"https://hub.kataven.ai/settings"}},"footer":{"socials":{"website":"https://kataven.ai"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"katavenai","hasAudioNarration":false,"actualSubdomain":"katavenai","customDomains":["docs.kataven.ai"],"gitSource":{"type":"github","owner":"kataven-ai","repo":"kataven-docs","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6a21ddfc374568b70af6c6d6","collectionId":"9d29626f-a39f-45ed-912d-f8362a80503c","schemaVersion":"v2"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6a21ddfc374568b70af6c6d6:success","clientVersion":"0.0.4021","searchFilterCounts":[{"language":"default","tag":"API Reference","count":89},{"language":"default","tag":"Resources","count":88},{"language":"default","tag":"Documentation","count":38},{"language":"default","tag":"Resource reference","count":26},{"language":"default","tag":"MCP Server","count":18},{"language":"default","tag":"Python SDK","count":15},{"language":"default","tag":"Node SDK","count":14},{"language":"default","tag":"Agents","count":12},{"language":"default","tag":"Clients","count":12},{"language":"default","tag":"Campaigns","count":11}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/tools/create-a-custom-tool","slug":"/api-reference/tools/create-a-custom-tool","pageMetadata":{"title":"Create a custom tool","description":null,"deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/tools","href":"/api-reference/tools/create-a-custom-tool","autogeneratedByOpenApi":true},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Create a custom tool","description":null,"deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/tools","href":"/api-reference/tools/create-a-custom-tool","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"parameters":["8f3185cf-27f8-456d-a515-45d9652b44a2"],"requestBody":"20907383-a40d-467c-9a96-a53d8004077f","responses":{"201":"9115ab6f-d79f-4b26-b02b-d2b52f8394d0","400":"f6682c88-778a-4a67-b7d5-759ccadd120c","500":"4f2b1abd-6a6e-4d9c-a341-46cf644700a7"},"security":["2960bb49-7e9a-4933-b8bf-36d8eee85d38"],"summary":"Create a custom tool","tags":["Tools"],"operationId":"postApiV1Tools","method":"post","type":"path","servers":["2b33dff2-a1ab-4bf7-96af-68d2316e657d","8147620e-ceb3-43ba-ae06-1e0839dcc10a","55e717d4-04d9-4e93-bdda-b992b33fc560"],"path":"/api/v1/tools","baseUrlOptions":["https://api.kataven.ai/v1","https://hub.kataven.ai/hub-api/api","http://localhost:8081"],"title":"Create a custom tool","description":"","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"8f3185cf-27f8-456d-a515-45d9652b44a2":{"description":"Tenant database. Required when using a Zitadel JWT.","in":"header","name":"X-Account-ID","schema":{"type":"string","description":"Tenant database. Required when using a Zitadel JWT.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"content":{"application/json":{"schema":{"properties":{"category":{"example":"ecommerce","type":"string","uniqueKey":"category","typeLabel":"string"},"description":{"example":"Look up an order by its ID. Returns status, line items, shipping address, and tracking links if available.","type":"string","uniqueKey":"description","typeLabel":"string"},"implementation_code":{"example":"def run(args, context):\n return get_order(args['order_id'])","type":"string","uniqueKey":"implementation_code","typeLabel":"string"},"implementation_config":{"additionalProperties":{"oneOf":[{}],"uniqueKey":"implementation_config.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"implementation_config","typeLabel":"object"},"implementation_type":{"enum":["http","python"],"example":"http","type":"string","uniqueKey":"implementation_type","typeLabel":"enum\u003cstring>"},"name":{"example":"lookup_order","type":"string","uniqueKey":"name","typeLabel":"string"},"schema":{"additionalProperties":{"oneOf":[{}],"uniqueKey":"schema.additionalProperties","typeLabel":"any"},"type":"object","uniqueKey":"schema","typeLabel":"object"},"tags":{"example":["orders","ecommerce"],"items":{"type":"string","uniqueKey":"tags.items.[INDEX]","typeLabel":"string"},"type":"array","uniqueItems":false,"uniqueKey":"tags","typeLabel":"string[]"}},"type":"object","description":"Tool spec","summary":"body","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"category":"ecommerce","description":"Look up an order by its ID. Returns status, line items, shipping address, and tracking links if available.","implementation_code":"def run(args, context):\n return get_order(args['order_id'])","implementation_config":{},"implementation_type":"http","name":"lookup_order","schema":{},"tags":["orders","ecommerce"]}}},"exampleType":"generated"}},"description":"Tool spec","required":true,"exampleType":"generated"},"responses":{"9115ab6f-d79f-4b26-b02b-d2b52f8394d0":{"content":{"application/json":{"schema":{"additionalProperties":{"type":"string","uniqueKey":"additionalProperties","typeLabel":"string"},"type":"object","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{}}},"exampleType":"generated"}},"description":"Created","exampleType":"generated"},"f6682c88-778a-4a67-b7d5-759ccadd120c":{"content":{"application/json":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"description":"Invalid body","exampleType":"generated"},"4f2b1abd-6a6e-4d9c-a341-46cf644700a7":{"content":{"application/json":{"schema":{"type":"string","uniqueKey":"","typeLabel":"string"},"examples":{"Example":{"title":"Example","value":"\u003cstring>"}},"exampleType":"generated"}},"description":"Database error","exampleType":"generated"}},"security":{"2960bb49-7e9a-4933-b8bf-36d8eee85d38":{"bearerAuth":{"in":"header","name":"Authorization","type":"apiKey","scopes":[]}}},"servers":{"2b33dff2-a1ab-4bf7-96af-68d2316e657d":{"url":"https://api.kataven.ai/v1","description":"Production (recommended for SDKs)"},"8147620e-ceb3-43ba-ae06-1e0839dcc10a":{"url":"https://hub.kataven.ai/hub-api/api","description":"Production (legacy path, kept for back-compat)"},"55e717d4-04d9-4e93-bdda-b992b33fc560":{"url":"http://localhost:8081","description":"Local development (api-server only)"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"in":"header","name":"Authorization","type":"apiKey","scopes":[]},"schema":{"title":"Authorization","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-spec/openapi.yaml"},"subdomain":"katavenai","siteName":"Kataven","title":"Create a custom tool - Kataven","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-08T20:39:08.073Z","originalFileLocation":"api-reference/tools/create-a-custom-tool.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Kataven\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create a custom tool - Kataven\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Kataven\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://katavenai.mintlify.app/_mintlify/api/og/v2?division=Tools\u0026amp;title=Create+a+custom+tool\u0026amp;theme=0ed538260c0fcf374bac1c4c\u0026amp;signature=dd123cf58fab5793c9fa11ed5a66bdda9ea916736e1bd252a52506fe1379c0ad\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create a custom tool - Kataven\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://katavenai.mintlify.app/_mintlify/api/og/v2?division=Tools\u0026amp;title=Create+a+custom+tool\u0026amp;theme=0ed538260c0fcf374bac1c4c\u0026amp;signature=dd123cf58fab5793c9fa11ed5a66bdda9ea916736e1bd252a52506fe1379c0ad\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/katavenai/ctclNJiEvSssQ8vf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Kataven\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2563EB\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/tools/create-a-custom-tool.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.kataven.ai/#organization\",\"name\":\"Kataven\",\"url\":\"https://docs.kataven.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/katavenai/2uMycxhxIwk_F2eE/images/logo.png?fit=max\u0026auto=format\u0026n=2uMycxhxIwk_F2eE\u0026q=85\u0026s=6cf130449ec06609915faad2826a4c60\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.kataven.ai#website\",\"name\":\"Kataven\",\"url\":\"https://docs.kataven.ai\",\"publisher\":{\"@id\":\"https://docs.kataven.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool#webpage\",\"url\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool\",\"name\":\"Create a custom tool\",\"dateModified\":\"2026-05-08T20:39:08.073Z\",\"isPartOf\":{\"@id\":\"https://docs.kataven.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Resources\",\"item\":\"https://docs.kataven.ai/api-reference/agents\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tools\",\"item\":\"https://docs.kataven.ai/api-reference/tools\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Create a custom tool\",\"item\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool#apireference\",\"headline\":\"Create a custom tool\",\"name\":\"Create a custom tool\",\"url\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool\",\"mainEntityOfPage\":{\"@id\":\"https://docs.kataven.ai/api-reference/tools/create-a-custom-tool#webpage\"},\"dateModified\":\"2026-05-08T20:39:08.073Z\",\"publisher\":{\"@id\":\"https://docs.kataven.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.kataven.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Kataven\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Kataven","nav":{"global":null,"anchors":[{"anchor":"Documentation","icon":"book-open","pages":[{"title":"Documentation","href":"/introduction"}]},{"anchor":"API Reference","icon":"rectangle-terminal","groups":[{"group":"Get started","pages":[{"title":"Kataven Hub API Reference — voice AI REST API","sidebarTitle":"API Reference","href":"/api-reference/introduction"}]},{"group":"Resources","pages":[{"group":"Agents","pages":[{"title":"Kataven Hub API — agents endpoints","sidebarTitle":"Agents","href":"/api-reference/agents"},{"title":"List agents","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/agents","href":"/api-reference/agents/list-agents"},{"title":"Create an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/agents","href":"/api-reference/agents/create-an-agent"},{"title":"Get an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/agents/{id}","href":"/api-reference/agents/get-an-agent"},{"title":"Update an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml patch /api/v1/agents/{id}","href":"/api-reference/agents/update-an-agent"},{"title":"Delete an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/agents/{id}","href":"/api-reference/agents/delete-an-agent"},{"title":"Attach an FAQ to an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/agents/{id}/faqs","href":"/api-reference/agents/attach-an-faq-to-an-agent"},{"title":"Detach an FAQ from an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/agents/{id}/faqs/{faqId}","href":"/api-reference/agents/detach-an-faq-from-an-agent"},{"title":"Attach a playbook to an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/agents/{id}/playbooks","href":"/api-reference/agents/attach-a-playbook-to-an-agent"},{"title":"Detach a playbook from an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/agents/{id}/playbooks/{playbookId}","href":"/api-reference/agents/detach-a-playbook-from-an-agent"},{"title":"List tools attached to an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/agents/{id}/tools","href":"/api-reference/agents/list-tools-attached-to-an-agent"},{"title":"Attach or update a tool on an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/agents/{id}/tools","href":"/api-reference/agents/attach-or-update-a-tool-on-an-agent"}]},{"group":"Tools","pages":[{"title":"Kataven Hub API — tools endpoints","sidebarTitle":"Tools","href":"/api-reference/tools"},{"title":"List tools","description":"Returns the catalog of tools available in this account, paginated and filterable. Includes category counts for filter UIs.","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/tools","href":"/api-reference/tools/list-tools"},{"title":"Create a custom tool","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/tools","href":"/api-reference/tools/create-a-custom-tool"},{"title":"Get a single tool","description":"Looks up the tool by uuid or by snake_case name. Returns 404 if neither matches.","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/tools/{id}","href":"/api-reference/tools/get-a-single-tool"},{"title":"Update a tool","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml put /api/v1/tools/{id}","href":"/api-reference/tools/update-a-tool"},{"title":"Delete a custom tool","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/tools/{id}","href":"/api-reference/tools/delete-a-custom-tool"}]},{"group":"Playbooks","pages":[{"title":"Kataven Hub API — playbooks endpoints","sidebarTitle":"Playbooks","href":"/api-reference/playbooks"},{"title":"List playbooks","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/playbooks","href":"/api-reference/playbooks/list-playbooks"},{"title":"Create a custom playbook","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/playbooks","href":"/api-reference/playbooks/create-a-custom-playbook"},{"title":"Get a single playbook","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/playbooks/{id}","href":"/api-reference/playbooks/get-a-single-playbook"},{"title":"Update a playbook","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml put /api/v1/playbooks/{id}","href":"/api-reference/playbooks/update-a-playbook"},{"title":"Delete a custom playbook","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/playbooks/{id}","href":"/api-reference/playbooks/delete-a-custom-playbook"}]},{"group":"FAQs","pages":[{"title":"Kataven Hub API — FAQs endpoints","sidebarTitle":"FAQs","href":"/api-reference/faqs"},{"title":"List FAQs","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/faqs","href":"/api-reference/faqs/list-faqs"},{"title":"Create an FAQ","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/faqs","href":"/api-reference/faqs/create-an-faq"},{"title":"Get a single FAQ","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/faqs/{id}","href":"/api-reference/faqs/get-a-single-faq"},{"title":"Update an FAQ","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml put /api/v1/faqs/{id}","href":"/api-reference/faqs/update-an-faq"},{"title":"Delete an FAQ","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/faqs/{id}","href":"/api-reference/faqs/delete-an-faq"}]},{"group":"Marketplace","pages":[{"title":"Kataven Hub API — marketplace endpoints","sidebarTitle":"Marketplace","href":"/api-reference/marketplace"},{"title":"List marketplace agent templates","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/marketplace/agents","href":"/api-reference/marketplace/list-marketplace-agent-templates"},{"title":"Get a marketplace agent template","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/marketplace/agents/{id}","href":"/api-reference/marketplace/get-a-marketplace-agent-template"},{"title":"Install a marketplace template as a new agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/marketplace/agents/{id}/install","href":"/api-reference/marketplace/install-a-marketplace-template-as-a-new-agent"},{"title":"List marketplace categories","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/marketplace/categories","href":"/api-reference/marketplace/list-marketplace-categories"}]},{"group":"Integrations","pages":[{"title":"Kataven Hub API — integrations endpoints","sidebarTitle":"Integrations","href":"/api-reference/integrations"},{"title":"List third-party integrations","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/integrations","href":"/api-reference/integrations/list-third-party-integrations"},{"title":"Get a single integration","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/integrations/{id}","href":"/api-reference/integrations/get-a-single-integration"},{"title":"Install an integration","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/integrations/{id}/install","href":"/api-reference/integrations/install-an-integration"},{"title":"Uninstall an integration","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/integrations/{id}/uninstall","href":"/api-reference/integrations/uninstall-an-integration"},{"title":"List MCP connections (stub)","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/mcp-connections","href":"/api-reference/integrations/list-mcp-connections-stub"},{"title":"List native tools (stub)","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/native-tools","href":"/api-reference/integrations/list-native-tools-stub"}]},{"group":"Telephony","pages":[{"title":"Kataven Hub API — telephony endpoints","sidebarTitle":"Telephony","href":"/api-reference/telephony"},{"title":"List phone numbers","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/telephony/numbers","href":"/api-reference/telephony/list-phone-numbers"},{"title":"Register a phone number","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/telephony/numbers","href":"/api-reference/telephony/register-a-phone-number"},{"title":"Pin or unpin a phone number to an agent","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml patch /api/v1/telephony/numbers/{id}","href":"/api-reference/telephony/pin-or-unpin-a-phone-number-to-an-agent"},{"title":"Delete a phone number","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/telephony/numbers/{id}","href":"/api-reference/telephony/delete-a-phone-number"},{"title":"List telephony provider credentials","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/telephony/providers","href":"/api-reference/telephony/list-telephony-provider-credentials"},{"title":"Add a telephony provider credential","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/telephony/providers","href":"/api-reference/telephony/add-a-telephony-provider-credential"},{"title":"Delete a telephony provider credential","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/telephony/providers/{id}","href":"/api-reference/telephony/delete-a-telephony-provider-credential"}]},{"group":"Calls","pages":[{"title":"Kataven Hub API — outbound calls","sidebarTitle":"Calls","href":"/api-reference/calls"},{"title":"Originate an outbound call","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/calls/originate","href":"/api-reference/calls/originate-an-outbound-call"}]},{"group":"Recordings","pages":[{"title":"Kataven Hub API — call recordings","sidebarTitle":"Recordings","href":"/api-reference/recordings"},{"title":"Get a presigned URL for the call recording","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/sessions/{id}/recording","href":"/api-reference/recordings/get-a-presigned-url-for-the-call-recording"}]},{"group":"Call Limits","pages":[{"title":"Kataven Hub API — call limits (cost caps)","sidebarTitle":"Call Limits","href":"/api-reference/call-limits"},{"title":"Get this tenant's call limits","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/call-limits","href":"/api-reference/call-limits/get-this-tenants-call-limits"}]},{"group":"Campaigns","pages":[{"title":"Kataven Hub API — outbound campaigns","sidebarTitle":"Campaigns","href":"/api-reference/campaigns"},{"title":"List campaigns","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/campaigns","href":"/api-reference/campaigns/list-campaigns"},{"title":"Create a campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/campaigns","href":"/api-reference/campaigns/create-a-campaign"},{"title":"Get a campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/campaigns/{id}","href":"/api-reference/campaigns/get-a-campaign"},{"title":"Delete a campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/campaigns/{id}","href":"/api-reference/campaigns/delete-a-campaign"},{"title":"List contacts in a campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/campaigns/{id}/contacts","href":"/api-reference/campaigns/list-contacts-in-a-campaign"},{"title":"Stream campaign events","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/campaigns/{id}/events","href":"/api-reference/campaigns/stream-campaign-events"},{"title":"Pause a running campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/campaigns/{id}/pause","href":"/api-reference/campaigns/pause-a-running-campaign"},{"title":"Resume a paused campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/campaigns/{id}/resume","href":"/api-reference/campaigns/resume-a-paused-campaign"},{"title":"Start a campaign","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/campaigns/{id}/start","href":"/api-reference/campaigns/start-a-campaign"},{"title":"Stop a campaign permanently","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/campaigns/{id}/stop","href":"/api-reference/campaigns/stop-a-campaign-permanently"}]},{"group":"API Keys","pages":[{"title":"Kataven Hub API — API keys (sk_live_)","sidebarTitle":"API Keys","href":"/api-reference/api-keys"},{"title":"List API keys","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/api-keys","href":"/api-reference/api-keys/list-api-keys"},{"title":"Create an API key (returns plaintext sk_live_ ONCE)","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/api-keys","href":"/api-reference/api-keys/create-an-api-key-returns-plaintext-sk_live_-once"},{"title":"Update or revoke an API key","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml patch /api/v1/api-keys/{id}","href":"/api-reference/api-keys/update-or-revoke-an-api-key"},{"title":"Delete or soft-disable an API key","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/api-keys/{id}","href":"/api-reference/api-keys/delete-or-soft-disable-an-api-key"}]},{"group":"Widget Keys","pages":[{"title":"Kataven Hub API — widget keys (pk_live_)","sidebarTitle":"Widget Keys","href":"/api-reference/widget-keys"},{"title":"List widget keys","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/widget-keys","href":"/api-reference/widget-keys/list-widget-keys"},{"title":"Create a widget key (returns plaintext pk_live_ ONCE)","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/widget-keys","href":"/api-reference/widget-keys/create-a-widget-key-returns-plaintext-pk_live_-once"},{"title":"Update or revoke a widget key","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml patch /api/v1/widget-keys/{id}","href":"/api-reference/widget-keys/update-or-revoke-a-widget-key"},{"title":"Delete or soft-disable a widget key","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml delete /api/v1/widget-keys/{id}","href":"/api-reference/widget-keys/delete-or-soft-disable-a-widget-key"}]},{"group":"Widget Settings","pages":[{"title":"Kataven Hub API — widget settings","sidebarTitle":"Widget Settings","href":"/api-reference/widget-admin"},{"title":"Get per-agent widget policy","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/agents/{id}/widget-settings","href":"/api-reference/widget-admin/get-per-agent-widget-policy"},{"title":"Update per-agent widget policy","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml patch /api/v1/agents/{id}/widget-settings","href":"/api-reference/widget-admin/update-per-agent-widget-policy"},{"title":"Get account-level widget branding","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/widget-settings","href":"/api-reference/widget-admin/get-account-level-widget-branding"},{"title":"Update account-level widget branding","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml patch /api/v1/widget-settings","href":"/api-reference/widget-admin/update-account-level-widget-branding"}]},{"group":"Widget Auth","pages":[{"title":"Kataven Hub API — widget visitor auth","sidebarTitle":"Widget Auth","href":"/api-reference/widget-auth"},{"title":"Exchange a server-minted visitor token for a widget session JWT","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/widget/auth/exchange","href":"/api-reference/widget-auth/exchange-a-server-minted-visitor-token-for-a-widget-session-jwt"},{"title":"Mint a guest visitor JWT for the embeddable widget","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/widget/auth/guest","href":"/api-reference/widget-auth/mint-a-guest-visitor-jwt-for-the-embeddable-widget"},{"title":"Refresh a widget session JWT","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/widget/auth/refresh","href":"/api-reference/widget-auth/refresh-a-widget-session-jwt"},{"title":"Mint a logged-in visitor JWT (server-to-server)","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml post /api/v1/widget/auth/user-token","href":"/api-reference/widget-auth/mint-a-logged-in-visitor-jwt-server-to-server"},{"title":"Get the widget bootstrap config for a client_key","deprecated":null,"version":null,"openapi":"/api-spec/openapi.yaml get /api/v1/widget/config","href":"/api-reference/widget-auth/get-the-widget-bootstrap-config-for-a-client_key"}]}]}]},{"anchor":"Python SDK","icon":"python","pages":[{"title":"Python SDK","href":"/sdks/python/overview"}]},{"anchor":"Node SDK","icon":"node-js","pages":[{"title":"Node SDK","href":"/sdks/node/overview"}]}]},"title":"Create a custom tool - Kataven","buildId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","deploymentId":"dpl_EnxDqhjaNc9a8MVa833TGULPd9uJ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-26-lDe7V.js","utils-CWQmgYtH.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-4-Aw3rSD.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-C2zjXYA5.js","snippetPresets-DFmpFA7C.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-FJpQavWq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-D_GvPF7k.js","shallow-Bs2ZB0NO.js","getApiPlaygroundDisplay-DCcqJJk-.js","CodeSnippet-DzDxawVe.js","CodeSnippets-aUr7fU-7.js","Page-CT9uE8Ip.js","getPastedJson-Y1fKsj_I.js","icon-DI4zTsDr.js","MethodPill-C0nDlmSQ.js","DuplicateIcon-NUXbx2nQ.js","createIcon-BdTHrPAi.js","DynamicMarkdown-CtpgKJwj.js","SectionHeading-B3x35tOt.js","axios-vUo_bRtp.js","Markdown-3OmurJMP.js","clsx-DMKzROTp.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-1ms6tsT-.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Ke9xIMFx.js"]}