{ "id": "4b5c6d7e-8f9a-4b0c-9d1e-2f3a4b5c6d7e", "project_id": "3f6c1a52-8d0e-4b8f-9a51-2c7d4e0b9f13", "agent_id": null, "name": "send_booking_link", "description": "Send the caller the booking link on WhatsApp.", "type": "messaging", "configs": { "channel": "whatsapp", "wa_channel_id": 12, "wa_provider": "meta", "messages": [ { "id": "booking_link", "description": "The link to book an appointment online.", "kind": "template", "template_id": "booking_link_v2", "variables": [ { "key": "1", "mode": "agent", "description": "The caller's first name." } ] } ], "max_sends_per_call": 2 }, "parameters": {}, "parameter_mapping": null, "hold_message": null, "hold_messages": null, "async_config": null, "session": null, "updated_at": 1794393600000, "library_tool_id": null, "library_revision": null, "library_channels": null, "used_by_count": 1, "used_by_agents": [ { "id": "5c1d9e2f-3a4b-4c5d-9e6f-7a8b9c0d1e2f", "name": "Front desk" } ]}
{
"error": "Invalid or revoked token"
}
{
"error": "Tool not found"
}
Tools
Get a tool
Returns one tool, with the agents that use it in used_by_agents. Check that list before you edit a project-wide tool: the edit reaches every one of them.
{ "id": "4b5c6d7e-8f9a-4b0c-9d1e-2f3a4b5c6d7e", "project_id": "3f6c1a52-8d0e-4b8f-9a51-2c7d4e0b9f13", "agent_id": null, "name": "send_booking_link", "description": "Send the caller the booking link on WhatsApp.", "type": "messaging", "configs": { "channel": "whatsapp", "wa_channel_id": 12, "wa_provider": "meta", "messages": [ { "id": "booking_link", "description": "The link to book an appointment online.", "kind": "template", "template_id": "booking_link_v2", "variables": [ { "key": "1", "mode": "agent", "description": "The caller's first name." } ] } ], "max_sends_per_call": 2 }, "parameters": {}, "parameter_mapping": null, "hold_message": null, "hold_messages": null, "async_config": null, "session": null, "updated_at": 1794393600000, "library_tool_id": null, "library_revision": null, "library_channels": null, "used_by_count": 1, "used_by_agents": [ { "id": "5c1d9e2f-3a4b-4c5d-9e6f-7a8b9c0d1e2f", "name": "Front desk" } ]}
{
"error": "Invalid or revoked token"
}
{
"error": "Tool not found"
}
Authorizations
Authorization
string
header
required
Your organization API key (it starts with anek_org_). The same key works on the Voice API and the Support API. See Authentication.
Path Parameters
projectId
string
required
Project id
id
string
required
Tool id
Response
The tool.
A tool an agent can call during a conversation. Project-wide tools (agent_id: null) can be attached to any agent of the project; a private tool belongs to one agent.
id
string
required
Tool id.
project_id
string
required
agent_id
string | null
required
The agent the tool is private to, or null for a project-wide tool.
name
string
required
The name the model calls the tool by.
description
string
required
What the tool does and when to use it, as the model reads it.
type
string
required
What the tool does, which decides the shape of configs: http, knowledgebase, code, builtin, workflow, messaging, handoff or ticket.
configs
object
required
The tool's configuration, in the shape of its type (see configs in Create a tool). It can also carry values Clarity fills in on save, such as a workflow's url or a knowledge base's search target.
parameters
object
required
JSON Schema of the arguments the model passes when it calls the tool.
parameter_mapping
object | null
required
Renames arguments before the request is built, {argument: request_field}. null when none.
Show child attributes
hold_message
string | null
required
What the agent says while the tool runs, or null for nothing.
hold_messages
object | null
required
The hold message per language of a multilingual agent, keyed by language label.
Show child attributes
async_config
object | null
required
Settings that let the conversation go on while the tool runs, in the shape of async_config in Create a tool. null means the agent waits for the result.
session
object | null
required
The tool's part in the call-scoped caller authentication session. Null means the tool takes no part. A non-null verification makes it a verification tool and carries the verification policy; caller authentication is on for an agent exactly when an attached tool verifies the caller or requires a verified caller. On PATCH, an absent key keeps the stored value and an explicit null clears it.
Show child attributes
updated_at
integer<int64> | null
required
When the tool was last changed, in milliseconds since the Unix epoch. null for a tool not changed since this field was added.
library_tool_id
string | null
The organization tool library entry this tool comes from, or null for a tool that belongs to this project only.
library_revision
integer | null
The library entry's revision this tool holds, or null.
library_channels
string[] | null
Which kinds of agents (chat, voice) can use the library entry, or null.
used_by_count
integer
How many agents of the project have the tool attached. A published agent keeps calling the tool it was published with until it is published again, whatever this count says. Present on reads and lists.
used_by_agents
object[]
The agents the tool is attached to. Returned when you get one tool, not in lists.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Clarity Support Docs","description":"Guides, SDKs, and API reference for Clarity's AI support platform: agents, chat, tickets, and the knowledge base.","colors":{"primary":"#0aa68a","light":"#24d8b8","dark":"#0aa68a"},"logo":{"light":"https://mintcdn.com/on-clarity/wANpiWtgQORdXhk3/logo/light.svg?fit=max\u0026auto=format\u0026n=wANpiWtgQORdXhk3\u0026q=85\u0026s=a67bcf8cb635c40e2371c3f86424d4a0","dark":"https://mintcdn.com/on-clarity/wANpiWtgQORdXhk3/logo/dark.svg?fit=max\u0026auto=format\u0026n=wANpiWtgQORdXhk3\u0026q=85\u0026s=577dc99ab10bac95f81c97fcc3e50097","href":"https://support.onclarity.com"},"favicon":"https://mintcdn.com/on-clarity/wANpiWtgQORdXhk3/favicon.png?fit=max\u0026auto=format\u0026n=wANpiWtgQORdXhk3\u0026q=85\u0026s=54c44b3a75b63a1416d10cc8096b97e6","api":{"playground":{"display":"interactive"},"examples":{"languages":["curl","python","javascript"]}},"appearance":{"default":"system"},"navbar":{"links":[{"href":"mailto:hello@onclarity.com","label":"Support"}],"primary":{"type":"button","label":"Open Clarity","href":"https://support.onclarity.com"}},"footer":{"socials":{"website":"https://www.onclarity.com","linkedin":"https://www.linkedin.com/company/onclarity"},"links":[{"header":"Product","items":[{"label":"Open Clarity","href":"https://support.onclarity.com"}]},{"header":"Legal","items":[{"label":"Terms of service","href":"https://www.onclarity.com/legal-pages/terms-of-service"},{"label":"Privacy policy","href":"https://www.onclarity.com/legal-pages/privacy-policy"}]}]},"seo":{"indexing":"all"},"contextual":{"options":["copy","view","chatgpt","claude","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Open Clarity","icon":"arrow-up-right-from-square","href":"https://support.onclarity.com"},{"anchor":"Support","icon":"envelope","href":"mailto:hello@onclarity.com"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"on-clarity","hasAudioNarration":false,"actualSubdomain":"on-clarity","customDomains":["docs.support.onclarity.com"],"gitSource":{"type":"github","owner":"anecdote-ai","repo":"anecdote-monorepo","deployBranch":"develop","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":"","_id":"6adb3a2646b60ddf4f03b4cf"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6af83d74f1de041cd0119a62","clientVersion":"0.0.4142","searchFilterCounts":[{"language":"default","tag":"API Reference","count":130},{"language":"default","tag":"Voice API","count":88},{"language":"default","tag":"Support API","count":40},{"language":"default","tag":"Evals","count":32},{"language":"default","tag":"Documentation","count":23},{"language":"default","tag":"Runs","count":16},{"language":"default","tag":"Telephony","count":16},{"language":"default","tag":"Campaigns","count":12},{"language":"default","tag":"Tickets","count":11},{"language":"default","tag":"Agents","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":"custom-rbac-roles","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":"rbac-expansion","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":"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":"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":"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":"full-page-search","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":"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":"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":"turbopuffer-dual-write","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},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","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}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/voice/tools/get-a-tool","slug":"/api-reference/voice/tools/get-a-tool","pageMetadata":{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/tools/{id}","title":"Get a tool","icon":"wrench","description":"Returns one tool, with the agents that use it in `used_by_agents`. Check that list before you edit a project-wide tool: the edit reaches every one of them.","href":"/api-reference/voice/tools/get-a-tool"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Returns one tool, with the agents that use it in \", _jsx(_components.code, {\n children: \"used_by_agents\"\n }), \". Check that list before you edit a project-wide tool: the edit reaches every one of them.\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"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":{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/tools/{id}","title":"Get a tool","icon":"wrench","description":"Returns one tool, with the agents that use it in `used_by_agents`. Check that list before you edit a project-wide tool: the edit reaches every one of them.","href":"/api-reference/voice/tools/get-a-tool"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Tools"],"summary":"Get a tool","description":"Returns one tool, with the agents that use it in `used_by_agents`. Check that list before you edit a project-wide tool: the edit reaches every one of them.","operationId":"getTool","responses":{"200":"b7c914ea-0d85-4587-9ed2-8e82587eefea","401":"6a2f012c-4fd5-4a39-be12-0b458ebcadb7","404":"4397f4b0-596d-4959-808c-bc72c7d781df"},"method":"get","type":"path","servers":["c1b5bfaf-ca83-44db-afe9-8385e654f187"],"security":["79258329-9c11-41e2-825c-e7e86baa03e6"],"path":"/v1/projects/{projectId}/tools/{id}","baseUrlOptions":["https://voice-api.onclarity.com"],"title":"Get a tool","codeSamples":[],"requestExampleLanguages":["bash","python","javascript"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"86a34511-d071-41a4-8316-42010a3f06eb":{"name":"projectId","in":"path","required":true,"schema":{"type":"string","isRequired":true,"description":"Project id","uniqueKey":"","typeLabel":"string"},"description":"Project id"},"7714a678-cf8b-48a7-8d06-5338fd0332b2":{"name":"id","in":"path","required":true,"schema":{"type":"string","isRequired":true,"description":"Tool id","uniqueKey":"","typeLabel":"string"},"description":"Tool id"}},"responses":{"b7c914ea-0d85-4587-9ed2-8e82587eefea":{"description":"The tool.","content":{"application/json":{"schema":{"type":"object","description":"A tool an agent can call during a conversation. Project-wide tools (`agent_id: null`) can be attached to any agent of the project; a private tool belongs to one agent.","required":["id","project_id","agent_id","name","description","type","configs","parameters","parameter_mapping","hold_message","hold_messages","async_config","session","updated_at"],"properties":{"id":{"type":"string","description":"Tool id.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"project_id":{"type":"string","isRequired":true,"uniqueKey":"project_id","typeLabel":"string"},"agent_id":{"oneOf":[{"type":"string","description":"The agent the tool is private to, or `null` for a project-wide tool.","isRequired":true,"uniqueKey":"agent_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The agent the tool is private to, or `null` for a project-wide tool.","isRequired":true,"uniqueKey":"agent_id.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"agent_id","typeLabel":"string | null"},"name":{"type":"string","description":"The name the model calls the tool by.","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"description":{"type":"string","description":"What the tool does and when to use it, as the model reads it.","isRequired":true,"uniqueKey":"description","typeLabel":"string"},"type":{"type":"string","description":"What the tool does, which decides the shape of `configs`: `http`, `knowledgebase`, `code`, `builtin`, `workflow`, `messaging`, `handoff` or `ticket`.","isRequired":true,"uniqueKey":"type","typeLabel":"string"},"configs":{"type":"object","additionalProperties":true,"description":"The tool's configuration, in the shape of its `type` (see `configs` in Create a tool). It can also carry values Clarity fills in on save, such as a workflow's `url` or a knowledge base's search target.","isRequired":true,"uniqueKey":"configs","typeLabel":"object"},"parameters":{"type":"object","additionalProperties":true,"description":"JSON Schema of the arguments the model passes when it calls the tool.","isRequired":true,"uniqueKey":"parameters","typeLabel":"object"},"parameter_mapping":{"oneOf":[{"type":"object","additionalProperties":{"type":"string","uniqueKey":"parameter_mapping.oneOf.0.additionalProperties","typeLabel":"string"},"description":"Renames arguments before the request is built, `{argument: request_field}`. `null` when none.","isRequired":true,"uniqueKey":"parameter_mapping.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"string","uniqueKey":"parameter_mapping.oneOf.1.additionalProperties","typeLabel":"string"},"description":"Renames arguments before the request is built, `{argument: request_field}`. `null` when none.","isRequired":true,"uniqueKey":"parameter_mapping.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"parameter_mapping","typeLabel":"object | null"},"hold_message":{"oneOf":[{"type":"string","description":"What the agent says while the tool runs, or `null` for nothing.","isRequired":true,"uniqueKey":"hold_message.oneOf.0","typeLabel":"string"},{"type":"null","description":"What the agent says while the tool runs, or `null` for nothing.","isRequired":true,"uniqueKey":"hold_message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"hold_message","typeLabel":"string | null"},"hold_messages":{"oneOf":[{"type":"object","additionalProperties":{"type":"string","uniqueKey":"hold_messages.oneOf.0.additionalProperties","typeLabel":"string"},"description":"The hold message per language of a multilingual agent, keyed by language label.","isRequired":true,"uniqueKey":"hold_messages.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":{"type":"string","uniqueKey":"hold_messages.oneOf.1.additionalProperties","typeLabel":"string"},"description":"The hold message per language of a multilingual agent, keyed by language label.","isRequired":true,"uniqueKey":"hold_messages.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"hold_messages","typeLabel":"object | null"},"async_config":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Settings that let the conversation go on while the tool runs, in the shape of `async_config` in Create a tool. `null` means the agent waits for the result.","isRequired":true,"uniqueKey":"async_config.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Settings that let the conversation go on while the tool runs, in the shape of `async_config` in Create a tool. `null` means the agent waits for the result.","isRequired":true,"uniqueKey":"async_config.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"async_config","typeLabel":"object | null"},"session":{"oneOf":[{"type":"object","additionalProperties":false,"description":"The tool's part in the call-scoped caller authentication session. Null means the tool takes no part. A non-null `verification` makes it a verification tool and carries the verification policy; caller authentication is on for an agent exactly when an attached tool verifies the caller or requires a verified caller. On PATCH, an absent key keeps the stored value and an explicit null clears it.","properties":{"requires_verified_caller":{"type":"boolean","description":"The runtime refuses the tool until a verification tool verified the caller.","uniqueKey":"session.oneOf.0.requires_verified_caller","typeLabel":"boolean"},"stores":{"type":"array","maxItems":20,"items":{"type":"object","additionalProperties":false,"required":["from","as","visibility"],"properties":{"from":{"type":"string","description":"Dot path into the JSON response.","isRequired":true,"uniqueKey":"session.oneOf.0.stores.items.[INDEX].from","typeLabel":"string"},"as":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Session name, referenced as {{session.\u003cas>}}.","isRequired":true,"uniqueKey":"session.oneOf.0.stores.items.[INDEX].as","typeLabel":"string"},"visibility":{"type":"string","enum":["private","visible"],"isRequired":true,"uniqueKey":"session.oneOf.0.stores.items.[INDEX].visibility","typeLabel":"enum\u003cstring>"}},"uniqueKey":"session.oneOf.0.stores.items.[INDEX]","typeLabel":"object"},"uniqueKey":"session.oneOf.0.stores","typeLabel":"object[]"},"verification":{"oneOf":[{"type":"object","additionalProperties":false,"properties":{"success":{"type":"object","additionalProperties":false,"properties":{"status_in":{"type":"array","items":{"type":"integer","minimum":100,"maximum":599,"uniqueKey":"session.oneOf.0.verification.oneOf.0.success.status_in.items.[INDEX]","typeLabel":"integer"},"uniqueKey":"session.oneOf.0.verification.oneOf.0.success.status_in","typeLabel":"integer[]"},"field":{"type":"string","uniqueKey":"session.oneOf.0.verification.oneOf.0.success.field","typeLabel":"string"},"equals":{"oneOf":[{"type":"string","uniqueKey":"session.oneOf.0.verification.oneOf.0.success.equals.oneOf.0","typeLabel":"string"},{"type":"number","uniqueKey":"session.oneOf.0.verification.oneOf.0.success.equals.oneOf.1","typeLabel":"number"},{"type":"boolean","uniqueKey":"session.oneOf.0.verification.oneOf.0.success.equals.oneOf.2","typeLabel":"boolean"}],"uniqueKey":"session.oneOf.0.verification.oneOf.0.success.equals","typeLabel":"string | number | boolean"}},"uniqueKey":"session.oneOf.0.verification.oneOf.0.success","typeLabel":"object"},"ttl_from":{"type":"string","uniqueKey":"session.oneOf.0.verification.oneOf.0.ttl_from","typeLabel":"string"},"max_attempts":{"type":"integer","minimum":1,"maximum":10,"description":"Failed verifications allowed per call (default 3). With several verifiers on an agent, the smallest wins.","uniqueKey":"session.oneOf.0.verification.oneOf.0.max_attempts","typeLabel":"integer"},"on_exhausted":{"type":"string","enum":["end_call","transfer","continue"],"description":"What happens when the attempts run out (default end_call). Taken from the verifier with the smallest max_attempts. `transfer` needs a connect_to_human tool attached to the agent.","uniqueKey":"session.oneOf.0.verification.oneOf.0.on_exhausted","typeLabel":"enum\u003cstring>"},"unreachable_counts_as_failure":{"type":"boolean","description":"Count a timeout / connection error / 5xx as a failed attempt (default false; true on any verifier wins).","uniqueKey":"session.oneOf.0.verification.oneOf.0.unreachable_counts_as_failure","typeLabel":"boolean"},"default_ttl_s":{"oneOf":[{"type":"integer","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins.","uniqueKey":"session.oneOf.0.verification.oneOf.0.default_ttl_s.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins.","uniqueKey":"session.oneOf.0.verification.oneOf.0.default_ttl_s.oneOf.1","typeLabel":"null"}],"uniqueKey":"session.oneOf.0.verification.oneOf.0.default_ttl_s","typeLabel":"integer | null"}},"uniqueKey":"session.oneOf.0.verification.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":false,"properties":{"success":{"type":"object","additionalProperties":false,"properties":{"status_in":{"type":"array","items":{"type":"integer","minimum":100,"maximum":599}},"field":{"type":"string"},"equals":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}}},"ttl_from":{"type":"string"},"max_attempts":{"type":"integer","minimum":1,"maximum":10,"description":"Failed verifications allowed per call (default 3). With several verifiers on an agent, the smallest wins."},"on_exhausted":{"type":"string","enum":["end_call","transfer","continue"],"description":"What happens when the attempts run out (default end_call). Taken from the verifier with the smallest max_attempts. `transfer` needs a connect_to_human tool attached to the agent."},"unreachable_counts_as_failure":{"type":"boolean","description":"Count a timeout / connection error / 5xx as a failed attempt (default false; true on any verifier wins)."},"default_ttl_s":{"oneOf":[{"type":"integer","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins."},{"type":"null","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins."}]}},"uniqueKey":"session.oneOf.0.verification.oneOf.1","typeLabel":"null"}],"uniqueKey":"session.oneOf.0.verification","typeLabel":"object | null"}},"isRequired":true,"uniqueKey":"session.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":false,"description":"The tool's part in the call-scoped caller authentication session. Null means the tool takes no part. A non-null `verification` makes it a verification tool and carries the verification policy; caller authentication is on for an agent exactly when an attached tool verifies the caller or requires a verified caller. On PATCH, an absent key keeps the stored value and an explicit null clears it.","properties":{"requires_verified_caller":{"type":"boolean","description":"The runtime refuses the tool until a verification tool verified the caller."},"stores":{"type":"array","maxItems":20,"items":{"type":"object","additionalProperties":false,"required":["from","as","visibility"],"properties":{"from":{"type":"string","description":"Dot path into the JSON response."},"as":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Session name, referenced as {{session.\u003cas>}}."},"visibility":{"type":"string","enum":["private","visible"]}}}},"verification":{"oneOf":[{"type":"object","additionalProperties":false,"properties":{"success":{"type":"object","additionalProperties":false,"properties":{"status_in":{"type":"array","items":{"type":"integer","minimum":100,"maximum":599}},"field":{"type":"string"},"equals":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}}},"ttl_from":{"type":"string"},"max_attempts":{"type":"integer","minimum":1,"maximum":10,"description":"Failed verifications allowed per call (default 3). With several verifiers on an agent, the smallest wins."},"on_exhausted":{"type":"string","enum":["end_call","transfer","continue"],"description":"What happens when the attempts run out (default end_call). Taken from the verifier with the smallest max_attempts. `transfer` needs a connect_to_human tool attached to the agent."},"unreachable_counts_as_failure":{"type":"boolean","description":"Count a timeout / connection error / 5xx as a failed attempt (default false; true on any verifier wins)."},"default_ttl_s":{"oneOf":[{"type":"integer","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins."},{"type":"null","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins."}]}}},{"type":"null","additionalProperties":false,"properties":{"success":{"type":"object","additionalProperties":false,"properties":{"status_in":{"type":"array","items":{"type":"integer","minimum":100,"maximum":599}},"field":{"type":"string"},"equals":{"oneOf":[{"type":"string"},{"type":"number"},{"type":"boolean"}]}}},"ttl_from":{"type":"string"},"max_attempts":{"type":"integer","minimum":1,"maximum":10,"description":"Failed verifications allowed per call (default 3). With several verifiers on an agent, the smallest wins."},"on_exhausted":{"type":"string","enum":["end_call","transfer","continue"],"description":"What happens when the attempts run out (default end_call). Taken from the verifier with the smallest max_attempts. `transfer` needs a connect_to_human tool attached to the agent."},"unreachable_counts_as_failure":{"type":"boolean","description":"Count a timeout / connection error / 5xx as a failed attempt (default false; true on any verifier wins)."},"default_ttl_s":{"oneOf":[{"type":"integer","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins."},{"type":"null","minimum":60,"maximum":86400,"description":"Session lifetime when the response gives none (null - until the call ends). The smallest non-null value wins."}]}}}]}},"isRequired":true,"uniqueKey":"session.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"session","typeLabel":"object | null"},"updated_at":{"oneOf":[{"type":"integer","format":"int64","description":"When the tool was last changed, in milliseconds since the Unix epoch. `null` for a tool not changed since this field was added.","isRequired":true,"uniqueKey":"updated_at.oneOf.0","typeLabel":"integer\u003cint64>"},{"type":"null","format":"int64","description":"When the tool was last changed, in milliseconds since the Unix epoch. `null` for a tool not changed since this field was added.","isRequired":true,"uniqueKey":"updated_at.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"updated_at","typeLabel":"integer\u003cint64> | null"},"library_tool_id":{"oneOf":[{"type":"string","description":"The organization tool library entry this tool comes from, or `null` for a tool that belongs to this project only.","uniqueKey":"library_tool_id.oneOf.0","typeLabel":"string"},{"type":"null","description":"The organization tool library entry this tool comes from, or `null` for a tool that belongs to this project only.","uniqueKey":"library_tool_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"library_tool_id","typeLabel":"string | null"},"library_revision":{"oneOf":[{"type":"integer","description":"The library entry's revision this tool holds, or `null`.","uniqueKey":"library_revision.oneOf.0","typeLabel":"integer"},{"type":"null","description":"The library entry's revision this tool holds, or `null`.","uniqueKey":"library_revision.oneOf.1","typeLabel":"null"}],"uniqueKey":"library_revision","typeLabel":"integer | null"},"library_channels":{"oneOf":[{"type":"array","items":{"type":"string","uniqueKey":"library_channels.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Which kinds of agents (`chat`, `voice`) can use the library entry, or `null`.","uniqueKey":"library_channels.oneOf.0","typeLabel":"string[]"},{"type":"null","items":{"type":"string"},"description":"Which kinds of agents (`chat`, `voice`) can use the library entry, or `null`.","uniqueKey":"library_channels.oneOf.1","typeLabel":"null"}],"uniqueKey":"library_channels","typeLabel":"string[] | null"},"used_by_count":{"type":"integer","description":"How many agents of the project have the tool attached. A published agent keeps calling the tool it was published with until it is published again, whatever this count says. Present on reads and lists.","uniqueKey":"used_by_count","typeLabel":"integer"},"used_by_agents":{"type":"array","description":"The agents the tool is attached to. Returned when you get one tool, not in lists.","items":{"type":"object","required":["id","name"],"properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"used_by_agents.items.[INDEX].id","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"used_by_agents.items.[INDEX].name","typeLabel":"string"}},"uniqueKey":"used_by_agents.items.[INDEX]","typeLabel":"object"},"uniqueKey":"used_by_agents","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"id":"4b5c6d7e-8f9a-4b0c-9d1e-2f3a4b5c6d7e","project_id":"3f6c1a52-8d0e-4b8f-9a51-2c7d4e0b9f13","agent_id":null,"name":"send_booking_link","description":"Send the caller the booking link on WhatsApp.","type":"messaging","configs":{"channel":"whatsapp","wa_channel_id":12,"wa_provider":"meta","messages":[{"id":"booking_link","description":"The link to book an appointment online.","kind":"template","template_id":"booking_link_v2","variables":[{"key":"1","mode":"agent","description":"The caller's first name."}]}],"max_sends_per_call":2},"parameters":{},"parameter_mapping":null,"hold_message":null,"hold_messages":null,"async_config":null,"session":null,"updated_at":1794393600000,"library_tool_id":null,"library_revision":null,"library_channels":null,"used_by_count":1,"used_by_agents":[{"id":"5c1d9e2f-3a4b-4c5d-9e6f-7a8b9c0d1e2f","name":"Front desk"}]},"examples":{"Example":{"title":"Example","value":{"id":"4b5c6d7e-8f9a-4b0c-9d1e-2f3a4b5c6d7e","project_id":"3f6c1a52-8d0e-4b8f-9a51-2c7d4e0b9f13","agent_id":null,"name":"send_booking_link","description":"Send the caller the booking link on WhatsApp.","type":"messaging","configs":{"channel":"whatsapp","wa_channel_id":12,"wa_provider":"meta","messages":[{"id":"booking_link","description":"The link to book an appointment online.","kind":"template","template_id":"booking_link_v2","variables":[{"key":"1","mode":"agent","description":"The caller's first name."}]}],"max_sends_per_call":2},"parameters":{},"parameter_mapping":null,"hold_message":null,"hold_messages":null,"async_config":null,"session":null,"updated_at":1794393600000,"library_tool_id":null,"library_revision":null,"library_channels":null,"used_by_count":1,"used_by_agents":[{"id":"5c1d9e2f-3a4b-4c5d-9e6f-7a8b9c0d1e2f","name":"Front desk"}]}}},"exampleType":"examples"}},"exampleType":"examples"},"6a2f012c-4fd5-4a39-be12-0b458ebcadb7":{"description":"No credential was sent, or the API key is invalid or revoked. A key that could not be checked at all answers 503 `AUTH_UPSTREAM_UNAVAILABLE` instead (see Errors).","content":{"application/json":{"schema":{"type":"object","required":["error"],"additionalProperties":true,"properties":{"error":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable reason, present on the refusals a client may branch on. Among them: `PUBLISH_CAPABILITY_REQUIRED` (403, the credential may not change what is live), `AGENT_NOT_PUBLISHED` (409, the agent has no published version yet), `AGENT_TYPE_NOT_DISPATCHABLE` (422, a Voice Assist agent named where an agent must place a call or answer one itself — a campaign, an outbound caller ID, a dispatched call, an eval; a number's inbound dispatch rule accepts one; the body carries `agent_type` and `agent_id`), `ASSIST_FLEET_NOT_CONFIGURED` (422 on a dispatch rule naming a Voice Assist agent in a project whose LiveKit has no Voice Assist listener), `NOT_APPLICABLE_TO_AGENT_TYPE` (422, a voice-only setting written on a Voice Assist agent), `AGENT_TYPE_BOUNDARY` (409), `AGENT_TYPE_NOT_SUPPORTED` (400), `INVALID_CUSTOMER_TIMEZONE` (400, `customer_timezone` is not a time zone name; the body carries the value), `VOICE_ASSISTANT_REQUIRED` (403, the organization is not licensed for Voice Assist), `ORGANIZATION_UNAVAILABLE` (503), `REGION_PROFILE_CONFLICT` (503), `LLM_SERVICE_TIER_UNAVAILABLE` (422, an agent's processing speed is not offered by its model or not enabled for the organization; `reason` says which) and `AUTH_UPSTREAM_UNAVAILABLE` (503 on any endpoint, with `Retry-After`: the credential could not be checked right now; it was not rejected and the request was not carried out).","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"Invalid or revoked token"},"examples":{"Example":{"title":"Example","value":{"error":"Invalid or revoked token"}}},"exampleType":"examples"}},"exampleType":"examples"},"4397f4b0-596d-4959-808c-bc72c7d781df":{"description":"The project or the tool does not exist.","content":{"application/json":{"schema":{"type":"object","required":["error"],"additionalProperties":true,"properties":{"error":{"type":"string","description":"Error message","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"A stable machine-readable reason, present on the refusals a client may branch on. Among them: `PUBLISH_CAPABILITY_REQUIRED` (403, the credential may not change what is live), `AGENT_NOT_PUBLISHED` (409, the agent has no published version yet), `AGENT_TYPE_NOT_DISPATCHABLE` (422, a Voice Assist agent named where an agent must place a call or answer one itself — a campaign, an outbound caller ID, a dispatched call, an eval; a number's inbound dispatch rule accepts one; the body carries `agent_type` and `agent_id`), `ASSIST_FLEET_NOT_CONFIGURED` (422 on a dispatch rule naming a Voice Assist agent in a project whose LiveKit has no Voice Assist listener), `NOT_APPLICABLE_TO_AGENT_TYPE` (422, a voice-only setting written on a Voice Assist agent), `AGENT_TYPE_BOUNDARY` (409), `AGENT_TYPE_NOT_SUPPORTED` (400), `INVALID_CUSTOMER_TIMEZONE` (400, `customer_timezone` is not a time zone name; the body carries the value), `VOICE_ASSISTANT_REQUIRED` (403, the organization is not licensed for Voice Assist), `ORGANIZATION_UNAVAILABLE` (503), `REGION_PROFILE_CONFLICT` (503), `LLM_SERVICE_TIER_UNAVAILABLE` (422, an agent's processing speed is not offered by its model or not enabled for the organization; `reason` says which) and `AUTH_UPSTREAM_UNAVAILABLE` (503 on any endpoint, with `Retry-After`: the credential could not be checked right now; it was not rejected and the request was not carried out).","uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":"Tool not found"},"examples":{"Example":{"title":"Example","value":{"error":"Tool not found"}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"79258329-9c11-41e2-825c-e7e86baa03e6":{"organizationApiKey":{"type":"http","scheme":"bearer","description":"Your organization API key (it starts with `anek_org_`). The same key works on the Voice API and the Support API. See [Authentication](/authentication).","scopes":[],"schemeName":"organizationApiKey"}}},"servers":{"c1b5bfaf-ca83-44db-afe9-8385e654f187":{"url":"https://voice-api.onclarity.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Your organization API key (it starts with `anek_org_`). The same key works on the Voice API and the Support API. See [Authentication](/authentication).","scopes":[],"schemeName":"organizationApiKey"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Your organization API key (it starts with `anek_org_`). The same key works on the Voice API and the Support API. See [Authentication](/authentication).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"organizationApiKey","name":"Authorization"}],"title":"organizationApiKey"}]},"originalFileLocation":"api-reference/voice-openapi.json"},"subdomain":"on-clarity","siteName":"Clarity Support Docs","title":"Get a tool - Clarity Support Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-11T18:23:49.449Z","originalFileLocation":"api-reference/voice/tools/get-a-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=\"description\" content=\"Returns one tool, with the agents that use it in used_by_agents. Check that list before you edit a project-wide tool: the edit reaches every one of them.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Clarity Support Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_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/on-clarity/mFVlSgsYkfg6E9Cg/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get a tool - Clarity Support Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns one tool, with the agents that use it in used_by_agents. Check that list before you edit a project-wide tool: the edit reaches every one of them.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Clarity Support Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://on-clarity.mintlify.site/_mintlify/api/og/v2?division=Tools\u0026amp;title=Get+a+tool\u0026amp;description=Returns+one+tool%2C+with+the+agents+that+use+it+in+%60used_by_agents%60.+Check+that+list+before+you+edit+a+project-wide+tool%3A+the+edit+reaches+every+one+of+them.\u0026amp;theme=d4d3ea60eb64236c312935e2\u0026amp;signature=6b9451092166cd25f94f67f3f7c29b532ba8a26e5e52ceafd7997db1d994353e\">\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=\"Get a tool - Clarity Support Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns one tool, with the agents that use it in used_by_agents. Check that list before you edit a project-wide tool: the edit reaches every one of them.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://on-clarity.mintlify.site/_mintlify/api/og/v2?division=Tools\u0026amp;title=Get+a+tool\u0026amp;description=Returns+one+tool%2C+with+the+agents+that+use+it+in+%60used_by_agents%60.+Check+that+list+before+you+edit+a+project-wide+tool%3A+the+edit+reaches+every+one+of+them.\u0026amp;theme=d4d3ea60eb64236c312935e2\u0026amp;signature=6b9451092166cd25f94f67f3f7c29b532ba8a26e5e52ceafd7997db1d994353e\">\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/on-clarity/mFVlSgsYkfg6E9Cg/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Clarity Support Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0aa68a\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-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/voice/tools/get-a-tool.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.support.onclarity.com/#organization\",\"name\":\"Clarity Support Docs\",\"url\":\"https://docs.support.onclarity.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/on-clarity/wANpiWtgQORdXhk3/logo/light.svg?fit=max\u0026auto=format\u0026n=wANpiWtgQORdXhk3\u0026q=85\u0026s=a67bcf8cb635c40e2371c3f86424d4a0\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.support.onclarity.com#website\",\"name\":\"Clarity Support Docs\",\"url\":\"https://docs.support.onclarity.com\",\"publisher\":{\"@id\":\"https://docs.support.onclarity.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool#webpage\",\"url\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool\",\"name\":\"Get a tool\",\"description\":\"Returns one tool, with the agents that use it in used_by_agents. Check that list before you edit a project-wide tool: the edit reaches every one of them.\",\"dateModified\":\"2026-11-11T18:23:49.449Z\",\"isPartOf\":{\"@id\":\"https://docs.support.onclarity.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Voice API\",\"item\":\"https://docs.support.onclarity.com/api-reference/voice/projects/list-projects\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Tools\",\"item\":\"https://docs.support.onclarity.com/api-reference/voice/tools/list-tools\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Get a tool\",\"item\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool#apireference\",\"headline\":\"Get a tool\",\"name\":\"Get a tool\",\"description\":\"Returns one tool, with the agents that use it in used_by_agents. Check that list before you edit a project-wide tool: the edit reaches every one of them.\",\"url\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool\",\"mainEntityOfPage\":{\"@id\":\"https://docs.support.onclarity.com/api-reference/voice/tools/get-a-tool#webpage\"},\"dateModified\":\"2026-11-11T18:23:49.449Z\",\"publisher\":{\"@id\":\"https://docs.support.onclarity.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.support.onclarity.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Clarity Support Docs\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Clarity Support Docs\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/voice/tools/get-a-tool.md","siteName":"Clarity Support Docs","nav":{"global":{"anchors":[{"anchor":"Open Clarity","icon":"arrow-up-right-from-square","href":"https://support.onclarity.com"},{"anchor":"Support","icon":"envelope","href":"mailto:hello@onclarity.com"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","groups":[{"group":"Getting started","pages":[{"title":"API introduction","href":"/api-reference/introduction"},{"title":"Errors","href":"/api-reference/errors"}]},{"group":"Voice API","pages":[{"group":"Projects","icon":"folder-open","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects","title":"List projects","icon":"folder-open","href":"/api-reference/voice/projects/list-projects"}]},{"group":"Agents","icon":"robot","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents","title":"List agents","icon":"robot","href":"/api-reference/voice/agents/list-agents"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents","title":"Create an agent","icon":"robot","href":"/api-reference/voice/agents/create-an-agent"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{id}","title":"Get an agent","icon":"robot","href":"/api-reference/voice/agents/get-an-agent"},{"openapi":"api-reference/voice-openapi.json PATCH /v1/projects/{projectId}/agents/{id}","title":"Update an agent","icon":"robot","href":"/api-reference/voice/agents/update-an-agent"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/agents/{id}","title":"Delete an agent","icon":"robot","href":"/api-reference/voice/agents/delete-an-agent"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{id}/clone","title":"Clone an agent","icon":"robot","href":"/api-reference/voice/agents/clone-an-agent"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{id}/publish","title":"Publish the draft","icon":"robot","href":"/api-reference/voice/agents/publish-the-draft"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{id}/discard-draft","title":"Discard the draft","icon":"robot","href":"/api-reference/voice/agents/discard-the-draft"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{id}/versions","title":"List an agent's versions","icon":"robot","href":"/api-reference/voice/agents/list-an-agents-versions"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{id}/versions/{versionId}","title":"Get an agent version","icon":"robot","href":"/api-reference/voice/agents/get-an-agent-version"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{id}/versions/{versionId}/republish","title":"Roll back to an earlier version","icon":"robot","href":"/api-reference/voice/agents/roll-back-to-an-earlier-version"}]},{"group":"Tools","icon":"wrench","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/tools","title":"List tools","icon":"wrench","href":"/api-reference/voice/tools/list-tools"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/tools","title":"Create a tool","icon":"wrench","href":"/api-reference/voice/tools/create-a-tool"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/tools/{id}/push","title":"Push a tool to live agents","icon":"wrench","href":"/api-reference/voice/tools/push-a-tool-to-live-agents"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{id}/tools","title":"List an agent's tools","icon":"wrench","href":"/api-reference/voice/tools/list-an-agents-tools"},{"openapi":"api-reference/voice-openapi.json PUT /v1/projects/{projectId}/agents/{id}/tools","title":"Set an agent's tools","icon":"wrench","description":"Replaces the agent's whole tool set; the array order becomes the attachment order. A tool left out is detached, not deleted. Each id must be a project-wide tool or a tool private to this agent. The change goes to the agent's draft; live calls get it when the agent is published.","href":"/api-reference/voice/tools/set-an-agents-tools"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/tools/{id}","title":"Get a tool","icon":"wrench","href":"/api-reference/voice/tools/get-a-tool"},{"openapi":"api-reference/voice-openapi.json PATCH /v1/projects/{projectId}/tools/{id}","title":"Update a tool","icon":"wrench","description":"Changes the fields you send and keeps the others. The top-level keys of `configs` are merged into the stored configuration (a `messaging`, `handoff` or `ticket` configuration is replaced whole), and the result is checked against the tool's `type`; when you also send `type`, send the complete `configs`. The edit reaches the drafts of every agent that uses the tool; live calls keep the published copy until each agent is published again or you push the tool to live agents. A request that changes nothing writes nothing.","href":"/api-reference/voice/tools/update-a-tool"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/tools/{id}","title":"Delete a tool","icon":"wrench","href":"/api-reference/voice/tools/delete-a-tool"}]},{"group":"Outbound calls","icon":"phone-arrow-up-right","pages":[{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{id}/dispatch-call","title":"Dispatch an outbound call","icon":"phone-arrow-up-right","href":"/api-reference/voice/outbound-calls/dispatch-an-outbound-call"}]},{"group":"Conversations","icon":"comments","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/conversations","title":"List conversations","icon":"comments","href":"/api-reference/voice/conversations/list-conversations"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/conversations/{id}","title":"Get a conversation","icon":"comments","href":"/api-reference/voice/conversations/get-a-conversation"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/conversations/{id}/calls","title":"List a conversation's calls","icon":"comments","href":"/api-reference/voice/conversations/list-a-conversations-calls"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/conversations/{id}/artifacts","title":"Get conversation artifacts","icon":"comments","href":"/api-reference/voice/conversations/get-conversation-artifacts"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/conversations/{id}/metrics","title":"Get conversation metrics","icon":"comments","href":"/api-reference/voice/conversations/get-conversation-metrics"}]},{"group":"Calls","icon":"phone","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/calls","title":"List calls","icon":"phone","href":"/api-reference/voice/calls/list-calls"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/calls/{id}","title":"Get a call","icon":"phone","href":"/api-reference/voice/calls/get-a-call"}]},{"group":"Campaigns","icon":"bullhorn","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/campaigns","title":"List campaigns","icon":"bullhorn","href":"/api-reference/voice/campaigns/list-campaigns"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/campaigns","title":"Create a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/create-a-campaign"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/campaigns/{id}","title":"Get a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/get-a-campaign"},{"openapi":"api-reference/voice-openapi.json PUT /v1/projects/{projectId}/campaigns/{id}","title":"Update a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/update-a-campaign"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/campaigns/{id}","title":"Delete a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/delete-a-campaign"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/campaigns/{id}/start","title":"Start a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/start-a-campaign"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/campaigns/{id}/cancel","title":"Cancel a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/cancel-a-campaign"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/campaigns/{id}/items","title":"Add contacts to a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/add-contacts-to-a-campaign"},{"openapi":"api-reference/voice-openapi.json PUT /v1/projects/{projectId}/campaigns/{id}/items/{itemId}","title":"Update a campaign contact","icon":"bullhorn","href":"/api-reference/voice/campaigns/update-a-campaign-contact"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/campaigns/{id}/items/{itemId}","title":"Remove a campaign contact","icon":"bullhorn","href":"/api-reference/voice/campaigns/remove-a-campaign-contact"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/campaigns/{id}/clone","title":"Clone a campaign","icon":"bullhorn","href":"/api-reference/voice/campaigns/clone-a-campaign"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/campaigns/{id}/analytics","title":"Get campaign progress","icon":"bullhorn","href":"/api-reference/voice/campaigns/get-campaign-progress"}]},{"group":"Telephony","icon":"tower-broadcast","pages":[{"group":"Phone numbers","icon":"hashtag","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/phone-numbers","title":"List phone numbers","icon":"hashtag","href":"/api-reference/voice/phone-numbers/list-phone-numbers"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/phone-numbers","title":"Create a phone number","icon":"hashtag","href":"/api-reference/voice/phone-numbers/create-a-phone-number"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/phone-numbers/{id}","title":"Get a phone number","icon":"hashtag","href":"/api-reference/voice/phone-numbers/get-a-phone-number"},{"openapi":"api-reference/voice-openapi.json PUT /v1/projects/{projectId}/phone-numbers/{id}","title":"Update a phone number","icon":"hashtag","href":"/api-reference/voice/phone-numbers/update-a-phone-number"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/phone-numbers/{id}","title":"Delete a phone number","icon":"hashtag","href":"/api-reference/voice/phone-numbers/delete-a-phone-number"}]},{"group":"Inbound SIP trunks","icon":"arrow-right-to-bracket","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/telephony/sip-trunks","title":"List inbound SIP trunks","icon":"arrow-right-to-bracket","href":"/api-reference/voice/inbound-sip-trunks/list-inbound-sip-trunks"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/telephony/sip-trunks","title":"Create an inbound SIP trunk","icon":"arrow-right-to-bracket","href":"/api-reference/voice/inbound-sip-trunks/create-an-inbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/telephony/sip-trunks/{id}","title":"Get an inbound SIP trunk","icon":"arrow-right-to-bracket","href":"/api-reference/voice/inbound-sip-trunks/get-an-inbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json PUT /v1/projects/{projectId}/telephony/sip-trunks/{id}","title":"Update an inbound SIP trunk","icon":"arrow-right-to-bracket","href":"/api-reference/voice/inbound-sip-trunks/update-an-inbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/telephony/sip-trunks/{id}","title":"Delete an inbound SIP trunk","icon":"arrow-right-to-bracket","href":"/api-reference/voice/inbound-sip-trunks/delete-an-inbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/telephony/sip-trunks/{id}/activate","title":"Activate an inbound SIP trunk","icon":"arrow-right-to-bracket","href":"/api-reference/voice/inbound-sip-trunks/activate-an-inbound-sip-trunk"}]},{"group":"Outbound SIP trunks","icon":"arrow-right-from-bracket","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/telephony/outbound-trunks","title":"List outbound SIP trunks","icon":"arrow-right-from-bracket","href":"/api-reference/voice/outbound-sip-trunks/list-outbound-sip-trunks"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/telephony/outbound-trunks","title":"Create an outbound SIP trunk","icon":"arrow-right-from-bracket","href":"/api-reference/voice/outbound-sip-trunks/create-an-outbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/telephony/outbound-trunks/{id}","title":"Get an outbound SIP trunk","icon":"arrow-right-from-bracket","href":"/api-reference/voice/outbound-sip-trunks/get-an-outbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json PUT /v1/projects/{projectId}/telephony/outbound-trunks/{id}","title":"Update an outbound SIP trunk","icon":"arrow-right-from-bracket","href":"/api-reference/voice/outbound-sip-trunks/update-an-outbound-sip-trunk"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/telephony/outbound-trunks/{id}","title":"Delete an outbound SIP trunk","icon":"arrow-right-from-bracket","href":"/api-reference/voice/outbound-sip-trunks/delete-an-outbound-sip-trunk"}]}]},{"group":"Evals","icon":"flask-vial","pages":[{"group":"Suites","icon":"layer-group","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-suites","title":"List eval suites","icon":"layer-group","href":"/api-reference/voice/eval-suites/list-eval-suites"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/eval-suites","title":"Create an eval suite","icon":"layer-group","href":"/api-reference/voice/eval-suites/create-an-eval-suite"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-suites/{id}","title":"Get an eval suite","icon":"layer-group","href":"/api-reference/voice/eval-suites/get-an-eval-suite"},{"openapi":"api-reference/voice-openapi.json PATCH /v1/projects/{projectId}/eval-suites/{id}","title":"Update an eval suite","icon":"layer-group","href":"/api-reference/voice/eval-suites/update-an-eval-suite"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/eval-suites/{id}","title":"Delete an eval suite","icon":"layer-group","href":"/api-reference/voice/eval-suites/delete-an-eval-suite"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-suites/{id}/compare","title":"Compare submissions on a suite","icon":"layer-group","href":"/api-reference/voice/eval-suites/compare-submissions-on-a-suite"}]},{"group":"Test cases","icon":"list-check","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-test-cases","title":"List eval test cases","icon":"list-check","href":"/api-reference/voice/eval-test-cases/list-eval-test-cases"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-test-cases/{id}","title":"Get an eval test case","icon":"list-check","href":"/api-reference/voice/eval-test-cases/get-an-eval-test-case"}]},{"group":"Scenarios","icon":"masks-theater","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-scenarios","title":"List eval scenarios","icon":"masks-theater","href":"/api-reference/voice/eval-scenarios/list-eval-scenarios"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-scenarios/{id}","title":"Get an eval scenario","icon":"masks-theater","href":"/api-reference/voice/eval-scenarios/get-an-eval-scenario"}]},{"group":"Judges","icon":"scale-balanced","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-judges","title":"List eval judges","icon":"scale-balanced","href":"/api-reference/voice/eval-judges/list-eval-judges"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/eval-judges","title":"Create an eval judge","icon":"scale-balanced","href":"/api-reference/voice/eval-judges/create-an-eval-judge"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-judges/templates","title":"List judge prompt templates","icon":"scale-balanced","href":"/api-reference/voice/eval-judges/list-judge-prompt-templates"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-judges/{id}","title":"Get an eval judge","icon":"scale-balanced","href":"/api-reference/voice/eval-judges/get-an-eval-judge"},{"openapi":"api-reference/voice-openapi.json PATCH /v1/projects/{projectId}/eval-judges/{id}","title":"Update an eval judge","icon":"scale-balanced","href":"/api-reference/voice/eval-judges/update-an-eval-judge"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/eval-judges/{id}","title":"Delete an eval judge","icon":"scale-balanced","href":"/api-reference/voice/eval-judges/delete-an-eval-judge"}]},{"group":"Runs","icon":"play","pages":[{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{agentId}/eval-submissions","title":"List an agent's eval runs","icon":"play","href":"/api-reference/voice/eval-submissions/list-an-agents-eval-runs"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{agentId}/eval-submissions","title":"Create an eval run","icon":"play","href":"/api-reference/voice/eval-submissions/create-an-eval-run"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}","title":"Get an eval run","icon":"play","href":"/api-reference/voice/eval-submissions/get-an-eval-run"},{"openapi":"api-reference/voice-openapi.json PATCH /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}","title":"Update a paused eval run","icon":"play","href":"/api-reference/voice/eval-submissions/update-a-paused-eval-run"},{"openapi":"api-reference/voice-openapi.json DELETE /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}","title":"Delete an eval run","icon":"play","href":"/api-reference/voice/eval-submissions/delete-an-eval-run"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/verdicts","title":"List an eval run's verdicts","icon":"play","href":"/api-reference/voice/eval-submissions/list-an-eval-runs-verdicts"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/call-results","title":"List an eval run's calls","icon":"play","href":"/api-reference/voice/eval-submissions/list-an-eval-runs-calls"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/report","title":"Get an eval run's report","icon":"play","href":"/api-reference/voice/eval-submissions/get-an-eval-runs-report"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/improve-candidates","title":"Get the failed checks of an eval run and the calls to read for them","icon":"play","href":"/api-reference/voice/eval-submissions/get-the-failed-checks-of-an-eval-run-and-the-calls-to-read-for-them"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/run","title":"Start or resume an eval run","icon":"play","href":"/api-reference/voice/eval-submissions/start-or-resume-an-eval-run"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{agentId}/eval-submissions/{id}/pause","title":"Pause an eval run","icon":"play","href":"/api-reference/voice/eval-submissions/pause-an-eval-run"},{"openapi":"api-reference/voice-openapi.json POST /v1/projects/{projectId}/agents/{agentId}/run-all-evals","title":"Start all of an agent's paused eval runs","icon":"play","href":"/api-reference/voice/eval-submissions/start-all-of-an-agents-paused-eval-runs"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-submissions","title":"List all eval runs in a project","icon":"play","href":"/api-reference/voice/eval-submissions/list-all-eval-runs-in-a-project"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-submissions/{id}","title":"Get an eval run by id","icon":"play","href":"/api-reference/voice/eval-submissions/get-an-eval-run-by-id"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-submissions/{id}/status","title":"Get an eval run's status","icon":"play","href":"/api-reference/voice/eval-submissions/get-an-eval-runs-status"},{"openapi":"api-reference/voice-openapi.json GET /v1/projects/{projectId}/eval-submissions/{id}/verdicts","title":"List an eval run's verdicts by run id","icon":"play","href":"/api-reference/voice/eval-submissions/list-an-eval-runs-verdicts-by-run-id"}]}]}]},{"group":"Support API","pages":[{"group":"AI service","icon":"wand-magic-sparkles","pages":[{"openapi":"api-reference/support-openapi.json GET /api/integration/ai_service/ticket/{ticket_id}/details","title":"Get ticket details","icon":"wand-magic-sparkles","href":"/api-reference/support/ai-service/get-ticket-details"},{"openapi":"api-reference/support-openapi.json POST /api/integration/ai_service/ticket/{ticket_id}/voice_handoff","title":"Request a voice call","icon":"wand-magic-sparkles","href":"/api-reference/support/ai-service/request-a-voice-call"},{"openapi":"api-reference/support-openapi.json GET /api/integration/ai_service/customer/{customer_id}/details","title":"Get customer details","icon":"wand-magic-sparkles","href":"/api-reference/support/ai-service/get-customer-details"},{"openapi":"api-reference/support-openapi.json GET /api/integration/ai_service/customer/{customer_id}/tickets","title":"List a customer's tickets","icon":"wand-magic-sparkles","href":"/api-reference/support/ai-service/list-a-customers-tickets"},{"openapi":"api-reference/support-openapi.json POST /api/integration/ai_service/customer/send","title":"Send a customer message","icon":"wand-magic-sparkles","href":"/api-reference/support/ai-service/send-a-customer-message"}]},{"group":"Messages","icon":"message","pages":[{"openapi":"api-reference/support-openapi.json POST /api/message/send","title":"Send a message on a ticket","icon":"message","href":"/api-reference/support/messages/send-a-message-on-a-ticket"},{"openapi":"api-reference/support-openapi.json POST /api/attachment/upload","title":"Upload an attachment","icon":"message","href":"/api-reference/support/messages/upload-an-attachment"}]},{"group":"Customers","icon":"users","pages":[{"openapi":"api-reference/support-openapi.json POST /api/customer/create","title":"Create a customer","icon":"users","href":"/api-reference/support/customers/create-a-customer"},{"openapi":"api-reference/support-openapi.json POST /api/customer/delete","title":"Delete a customer","icon":"users","href":"/api-reference/support/customers/delete-a-customer"},{"openapi":"api-reference/support-openapi.json GET /api/customer/{customer_id}","title":"Get a customer","icon":"users","href":"/api-reference/support/customers/get-a-customer"},{"openapi":"api-reference/support-openapi.json POST /api/customer/edit","title":"Update a customer","icon":"users","href":"/api-reference/support/customers/update-a-customer"},{"openapi":"api-reference/support-openapi.json POST /api/customer/tags_set","title":"Set a customer's tags","icon":"users","href":"/api-reference/support/customers/set-a-customers-tags"},{"openapi":"api-reference/support-openapi.json GET /api/customer/list","title":"List customers","icon":"users","href":"/api-reference/support/customers/list-customers"},{"openapi":"api-reference/support-openapi.json GET /api/custom-attributes/definitions/list","title":"List custom attribute definitions","icon":"users","href":"/api-reference/support/customers/list-custom-attribute-definitions"},{"openapi":"api-reference/support-openapi.json GET /api/custom-attributes/values","title":"Get custom attribute values","icon":"users","href":"/api-reference/support/customers/get-custom-attribute-values"},{"openapi":"api-reference/support-openapi.json POST /api/custom-attributes/values/set","title":"Set a custom attribute value","icon":"users","href":"/api-reference/support/customers/set-a-custom-attribute-value"}]},{"group":"Tickets","icon":"ticket","pages":[{"openapi":"api-reference/support-openapi.json POST /api/ticket/category_set","title":"Set a ticket's category","icon":"ticket","href":"/api-reference/support/tickets/set-a-tickets-category"},{"openapi":"api-reference/support-openapi.json POST /api/ticket/status_set","title":"Set a ticket's status","icon":"ticket","href":"/api-reference/support/tickets/set-a-tickets-status"},{"openapi":"api-reference/support-openapi.json POST /api/ticket/tags_change","title":"Add or remove ticket tags","icon":"ticket","href":"/api-reference/support/tickets/add-or-remove-ticket-tags"},{"openapi":"api-reference/support-openapi.json POST /api/ticket/tags_set","title":"Set a ticket's tags","icon":"ticket","href":"/api-reference/support/tickets/set-a-tickets-tags"},{"openapi":"api-reference/support-openapi.json POST /api/ticket/assign/v2","title":"Assign a ticket","icon":"ticket","href":"/api-reference/support/tickets/assign-a-ticket"},{"openapi":"api-reference/support-openapi.json GET /api/ticket_priority/list","title":"List ticket priorities","icon":"ticket","href":"/api-reference/support/tickets/list-ticket-priorities"},{"openapi":"api-reference/support-openapi.json GET /api/ticket_status/list","title":"List ticket statuses","icon":"ticket","href":"/api-reference/support/tickets/list-ticket-statuses"},{"openapi":"api-reference/support-openapi.json GET /api/ticket_category/list","title":"List ticket categories","icon":"ticket","href":"/api-reference/support/tickets/list-ticket-categories"},{"openapi":"api-reference/support-openapi.json GET /api/agent/list","title":"List agents","icon":"ticket","href":"/api-reference/support/tickets/list-agents"},{"openapi":"api-reference/support-openapi.json GET /api/team/list","title":"List teams","icon":"ticket","href":"/api-reference/support/tickets/list-teams"},{"openapi":"api-reference/support-openapi.json GET /api/tag/list","title":"List tags","icon":"ticket","href":"/api-reference/support/tickets/list-tags"}]},{"group":"Knowledge base","icon":"book-open","pages":[{"openapi":"api-reference/support-openapi.json POST /api/kb/articles/create","title":"Create an article","icon":"book-open","href":"/api-reference/support/knowledge-base/create-an-article"},{"openapi":"api-reference/support-openapi.json DELETE /api/kb/articles/delete","title":"Delete an article","icon":"book-open","href":"/api-reference/support/knowledge-base/delete-an-article"},{"openapi":"api-reference/support-openapi.json GET /api/kb/articles/detail","title":"Get an article","icon":"book-open","href":"/api-reference/support/knowledge-base/get-an-article"},{"openapi":"api-reference/support-openapi.json GET /api/kb/meta","title":"Get knowledge base metadata","icon":"book-open","href":"/api-reference/support/knowledge-base/get-knowledge-base-metadata"},{"openapi":"api-reference/support-openapi.json POST /api/kb/articles/list","title":"List articles","icon":"book-open","href":"/api-reference/support/knowledge-base/list-articles"},{"openapi":"api-reference/support-openapi.json PATCH /api/kb/articles/update","title":"Update an article","icon":"book-open","href":"/api-reference/support/knowledge-base/update-an-article"},{"openapi":"api-reference/support-openapi.json POST /api/kb/articles/upload","title":"Upload articles from a file","icon":"book-open","href":"/api-reference/support/knowledge-base/upload-articles-from-a-file"}]},{"group":"Webhooks","icon":"bolt","pages":[{"openapi":"api-reference/support-openapi.json POST /api/webhooks/create","title":"Create a webhook","icon":"bolt","href":"/api-reference/support/webhooks/create-a-webhook"},{"openapi":"api-reference/support-openapi.json GET /api/webhooks/{webhook_id}","title":"Get a webhook","icon":"bolt","href":"/api-reference/support/webhooks/get-a-webhook"},{"openapi":"api-reference/support-openapi.json DELETE /api/webhooks/{webhook_id}","title":"Delete a webhook","icon":"bolt","href":"/api-reference/support/webhooks/delete-a-webhook"},{"openapi":"api-reference/support-openapi.json GET /api/webhooks/events/list","title":"List webhook events","icon":"bolt","href":"/api-reference/support/webhooks/list-webhook-events"},{"openapi":"api-reference/support-openapi.json GET /api/webhooks/list","title":"List webhooks","icon":"bolt","href":"/api-reference/support/webhooks/list-webhooks"},{"openapi":"api-reference/support-openapi.json POST /api/webhooks/edit","title":"Update a webhook","icon":"bolt","href":"/api-reference/support/webhooks/update-a-webhook"}]}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog"}]}]},"basePath":"","title":"Get a tool - Clarity Support Docs","buildId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","deploymentId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-NXj-Rqjv.js","utils-m0thOP-_.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D13EKcfm.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema--XTdfsEb.js","snippetPresets-D3s4lmAH.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-ChURybxL.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DL8CiXq2.js","shallow-DI2-YB2E.js","getApiPlaygroundDisplay-DxbW7b_y.js","CodeSnippet-CiNYS0pP.js","CodeSnippets-BT87bThu.js","Page-DSpdRuhM.js","getPastedJson-F_g_IrFQ.js","icon-CCIG5BAs.js","MethodPill-DY3E0jwx.js","DuplicateIcon-BN88xnEg.js","createIcon-VCCc5HO5.js","DynamicMarkdown-CaSwclgK.js","SectionHeading-DXV8nWhc.js","axios-vUo_bRtp.js","Markdown-CV32Re6G.js","clsx-5ydLOnhV.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-pFDdfjRe.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BUGO5bPJ.js"]}