> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ravan.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Agent Tool

> Fetch a single tool by ID for the authenticated organization.

### Authorizations

<ParamField header="Authorization" type="string" required>
  Bearer JWT used to authenticate the request for the organization scope.
</ParamField>

***

### Path Parameters

<ParamField path="id" type="string" required>
  Tool UUID.
</ParamField>

***

### Response

<ResponseField name="success" type="boolean">
  Whether the request succeeded.
</ResponseField>

<ResponseField name="message" type="string">
  Human-readable status message.
</ResponseField>

<ResponseField name="data" type="object">
  Returned tool.

  <Expandable title="data">
    <ResponseField name="id" type="string">
      Tool UUID.
    </ResponseField>

    <ResponseField name="organizationId" type="string">
      Organization UUID.
    </ResponseField>

    <ResponseField name="name" type="string">
      Tool name.
    </ResponseField>

    <ResponseField name="description" type="string">
      Tool description.
    </ResponseField>

    <ResponseField name="type" type="string">
      Tool type.
    </ResponseField>

    <ResponseField name="definition" type="object">
      Tool definition payload.
    </ResponseField>

    <ResponseField name="isActive" type="boolean">
      Whether the tool is active.
    </ResponseField>

    <ResponseField name="agentId" type="string">
      Agent UUID attached to the tool.
    </ResponseField>

    <ResponseField name="enabledFunctions" type="object">
      Enabled tool functions.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json 200 theme={null}
  {
    "success": true,
    "message": "Tool fetched successfully",
    "data": {
      "id": "1a2b3c4d-1111-2222-3333-444455556666",
      "organizationId": "0b8e2f10-1234-4abc-9def-567890abcdef",
      "name": "book_appointment",
      "description": "Books an appointment in the connected calendar",
      "type": "custom",
      "definition": {
        "url": "https://example.com/book",
        "method": "POST",
        "parameters": {
          "type": "object",
          "properties": {
            "date": {
              "type": "string"
            }
          }
        }
      },
      "isActive": true,
      "agentId": "9f1c2b3a-4d5e-6f70-8190-a1b2c3d4e5f6",
      "enabledFunctions": {
        "values": [
          "book",
          "reschedule"
        ]
      }
    }
  }
  ```
</ResponseExample>


## OpenAPI

````yaml GET /api/v1/tools/{id}/
openapi: 3.0.1
info:
  title: Agni API
  version: 1.0.0
  description: >-
    Agni API for managing agents, tools, widget settings, telephony, and
    integrations.
servers:
  - url: https://api.ravan.ai
security:
  - X-Api-Key: []
tags:
  - name: AgentService
  - name: AgentToolService
  - name: WidgetSettingsService
  - name: PhoneService
  - name: AppointmentService
  - name: GHLService
  - name: CalComService
  - name: CampaignService
  - name: ContactService
  - name: CallingService
  - name: RAGService
  - name: ModelService
  - name: HealthService
paths:
  /api/v1/tools/{id}/:
    get:
      tags:
        - AgentToolService
      summary: Get Agent Tool
      description: Fetch a single tool by ID for the authenticated organization.
      operationId: GetAgentTool
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: Tool UUID.
      responses:
        '200':
          description: Tool fetched successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAgentToolResponse'
              example:
                success: true
                message: Tool fetched successfully
                data:
                  id: 1a2b3c4d-1111-2222-3333-444455556666
                  organizationId: 0b8e2f10-1234-4abc-9def-567890abcdef
                  name: book_appointment
                  description: Books an appointment in the connected calendar
                  type: custom
                  definition:
                    url: https://example.com/book
                    method: POST
                    parameters:
                      type: object
                      properties:
                        date:
                          type: string
                  isActive: true
                  agentId: 9f1c2b3a-4d5e-6f70-8190-a1b2c3d4e5f6
                  enabledFunctions:
                    values:
                      - book
                      - reschedule
        '400':
          description: Invalid UUID
        '401':
          description: Unauthenticated
        '404':
          description: Tool not found
        '500':
          description: Internal server error
      security:
        - BearerAuth: []
components:
  schemas:
    GetAgentToolResponse:
      type: object
      properties:
        success:
          type: boolean
          example: true
        message:
          type: string
          example: Tool fetched successfully
        data:
          $ref: '#/components/schemas/AgentTool'
    AgentTool:
      type: object
      properties:
        id:
          type: string
          description: Tool UUID
        organizationId:
          type: string
          description: Organization UUID
        name:
          type: string
          description: Tool name
        description:
          type: string
          description: Tool description
        type:
          type: string
          description: Tool type
        definition:
          $ref: '#/components/schemas/AgentToolDefinition'
        isActive:
          type: boolean
          description: Whether the tool is active
        agentId:
          type: string
          description: Agent UUID attached to the tool
        enabledFunctions:
          $ref: '#/components/schemas/AgentToolEnabledFunctions'
    AgentToolDefinition:
      type: object
      description: Tool definition payload.
      properties:
        url:
          type: string
          example: https://example.com/book
        method:
          type: string
          example: POST
        parameters:
          type: object
          properties:
            type:
              type: string
              example: object
            properties:
              type: object
              additionalProperties:
                type: object
                properties:
                  type:
                    type: string
                    example: string
      additionalProperties: true
    AgentToolEnabledFunctions:
      type: object
      properties:
        values:
          type: array
          items:
            type: string
  securitySchemes:
    X-Api-Key:
      type: apiKey
      in: header
      name: X-Api-Key
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````