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

# Get Agent

> Retrieve the complete configuration of a specific agent

## Overview

Retrieve the full configuration of a specific voice agent, including ASR, LLM, and TTS settings, advance ASR parameters, pre-call variables, voicemail detection, call transfer configuration, post-call webhook, and FAQ status.

## Required Permission

`agents`

## Path Parameters

| Name    | Type   | Required | Description              |
| ------- | ------ | -------- | ------------------------ |
| `botId` | string | Yes      | Unique agent identifier. |

## Example cURL

```bash theme={null}
curl "https://api.inya.ai/platform/v1/agents/fb79920229d144608ebf665a10e50275" \
  -H "x-api-key: <your_api_key>"
```

## Response Fields

| Field                      | Type    | Description                                                                                                                                                                     |
| -------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `botId`                    | string  | Agent identifier.                                                                                                                                                               |
| `botName`                  | string  | Agent display name.                                                                                                                                                             |
| `environment`              | string  | Always returns `development`.                                                                                                                                                   |
| `botDetails`               | object  | `language[]`, `region`, `timeZone`, `description`.                                                                                                                              |
| `overview`                 | object  | `greetingMessage`, `endMessage`, `systemPrompt`, `hasDynamicGreeting`, `dynamicInitialMessageConfig`, `languageSwitchPromptDetails`, `languageSwitch`, `minWordsForLangSwitch`. |
| `asrParams`                | object  | `provider`, `model`, `language`.                                                                                                                                                |
| `llmParams`                | object  | `provider`, `model`, `temperature` (0.0–1.0), `maxTokens` (1–4096).                                                                                                             |
| `ttsParams`                | object  | `provider`, `voice`, `language`, `ttsRate` (0.5–2.0), `enableCaching`.                                                                                                          |
| `advanceSettings`          | object  | Full ASR advance settings. See table below.                                                                                                                                     |
| `preCall`                  | object  | `preCallVariableStatus`, `preCallParams` with `primaryVariable` and `variables[]`.                                                                                              |
| `enableVoiceMailDetection` | boolean | Whether voicemail detection is enabled.                                                                                                                                         |
| `voiceMailDetectionConfig` | object  | `enabled`, `maxDetectionRetries`, `maxVoicemailMessageWaitTime`, `voiceMailResponse`, `postDetectionActions`.                                                                   |
| `callTransferConfig`       | object  | `description`, `defaultTransferMessage`, `details[]`.                                                                                                                           |
| `callTransferConfigStatus` | boolean | Whether call transfer is currently enabled.                                                                                                                                     |
| `hasPostCallTrigger`       | boolean | Whether the post-call webhook is enabled.                                                                                                                                       |
| `postCallTriggerAPIConfig` | object  | `hasHeaders`, `method`, `url`, `headers[]` — called after every call ends.                                                                                                      |
| `faqEnabled`               | boolean | `true` once at least one FAQ has been added or imported.                                                                                                                        |

### `advanceSettings` Fields

| Field                              | Type      | Default | Range / Notes                                                                               |
| ---------------------------------- | --------- | ------- | ------------------------------------------------------------------------------------------- |
| `barge`                            | boolean   | `true`  | Allow the caller to interrupt the agent mid-speech.                                         |
| `initialMessageBarge`              | boolean   | `false` | Allow the caller to interrupt the opening greeting.                                         |
| `useDenoiser`                      | boolean   | `true`  | Apply background noise filtering to incoming audio.                                         |
| `suppressionLevel`                 | integer   | `80`    | Denoiser suppression intensity: 20–100. Active only when `useDenoiser` is `true`.           |
| `enableItnForAsr`                  | boolean   | `false` | Apply Inverse Text Normalization to ASR output.                                             |
| `maxSpeechDuration`                | number    | `30`    | Maximum single-utterance duration in seconds: 1–240.                                        |
| `speechInitialSilenceTimeout`      | number    | `10.0`  | Silence threshold before ASR starts listening: 10–30s (streaming) or 10–60s (others).       |
| `endSilenceTimeout`                | number    | `800`   | End-of-speech silence in milliseconds. Stored directly.                                     |
| `speechSegmentationSilenceTimeout` | number    | `1000`  | Silence gap used to segment utterances: 0.1–5s. Streaming models only.                      |
| `minWordsForBargeIn`               | integer   | `1`     | Minimum word count before a barge-in is accepted: 1–5. Streaming ASR only.                  |
| `minTimeToBarge`                   | number    | `0.1`   | Minimum elapsed time (seconds) before barge-in is accepted: 0.1–3s. Non-streaming ASR only. |
| `asrPreemptive`                    | boolean   | `false` | Enable Fast Streaming mode. Specific REST ASR models only.                                  |
| `enableDtmf`                       | boolean   | `false` | Accept DTMF (touch-tone) keypad input.                                                      |
| `phraseConfig.phrase`              | string\[] | `[]`    | Custom vocabulary hint list. Maximum 100 phrases. Vocabulary-capable ASR models only.       |
| `phraseConfig.phraseWeight`        | number    | `0.0`   | Bias weight applied to custom vocabulary: 0.0–2.0.                                          |

## Response

### Success (200)

```json theme={null}
{
  "status": "success",
  "requestId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "message": "Agent details retrieved successfully",
  "response": {
    "botId": "fb79920229d144608ebf665a10e50275",
    "botName": "Support Agent",
    "environment": "development",
    "createdAt": "2026-04-01T10:00:00Z",
    "updatedAt": "2026-07-01T12:00:00Z",
    "botDetails": {
      "language": ["en-IN", "hi-IN"],
      "region": "asia",
      "timeZone": "Asia/Kolkata",
      "description": "Handles inbound customer support calls."
    },
    "overview": {
      "greetingMessage": "Hello, how can I help you today?",
      "endMessage": "Thank you. Have a great day!",
      "systemPrompt": "You are a helpful support agent.",
      "hasDynamicGreeting": false,
      "dynamicInitialMessageConfig": {
        "hasHeaders": false,
        "method": null,
        "url": null,
        "headers": null
      },
      "languageSwitch": true,
      "explicitLanguageSwitch": true,
      "minWordsForLangSwitch": 2,
      "languageSwitchPromptDetails": {
        "switchPrompt": "Which language do you prefer?",
        "mode": "explicit"
      }
    },
    "asrParams": {
      "provider": "gnani",
      "model": "gnani_asr",
      "language": "en-IN"
    },
    "llmParams": {
      "provider": "gnani",
      "model": "Pampa Go",
      "temperature": 0.5,
      "maxTokens": 300
    },
    "ttsParams": {
      "provider": "gnani",
      "voice": "Pranav",
      "language": "en-IN",
      "ttsRate": 1.0,
      "enableCaching": true
    },
    "advanceSettings": {
      "barge": true,
      "initialMessageBarge": false,
      "useDenoiser": true,
      "suppressionLevel": 80,
      "enableItnForAsr": false,
      "maxSpeechDuration": 30.0,
      "speechInitialSilenceTimeout": 10.0,
      "endSilenceTimeout": 800.0,
      "speechSegmentationSilenceTimeout": 1000.0,
      "minWordsForBargeIn": 1,
      "minTimeToBarge": 0.1,
      "asrPreemptive": false,
      "enableDtmf": false,
      "phraseConfig": {
        "phrase": [],
        "phraseWeight": 0.0
      }
    },
    "preCall": {
      "preCallVariableStatus": true,
      "preCallParams": {
        "primaryVariable": "customer_name",
        "variables": [
          {
            "id": "var_1",
            "variable": "customer_name",
            "sampleValue": "Alice",
            "description": "Customer name"
          }
        ]
      }
    },
    "enableVoiceMailDetection": false,
    "voiceMailDetectionConfig": {
      "enabled": false,
      "maxDetectionRetries": 2,
      "maxVoicemailMessageWaitTime": 1,
      "voiceMailResponse": "We tried reaching you. Please call us back.",
      "postDetectionActions": []
    },
    "callTransferConfig": {
      "description": "Transfer to live agent",
      "defaultTransferMessage": "Please hold while we transfer you.",
      "details": [
        {
          "phoneNumber": "9876500000",
          "countryCode": "+91",
          "prompt": "Transfer",
          "message": "Hold on"
        }
      ]
    },
    "callTransferConfigStatus": false,
    "hasPostCallTrigger": true,
    "postCallTriggerAPIConfig": {
      "hasHeaders": false,
      "method": "POST",
      "url": "https://your-server.example.com/call_status",
      "headers": null
    },
    "faqEnabled": false
  }
}
```

### Error Responses

**403 Forbidden** - Agent not found or not accessible

```json theme={null}
{
  "status": "failure",
  "requestId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
  "message": "User does not have access to this bot"
}
```

## Use Cases

* Reviewing an agent's full configuration before making updates
* Auditing agent settings for compliance or quality assurance
* Fetching the current configuration as a baseline before a **Update Agent** call
* Checking `faqEnabled` to determine whether an agent has a FAQ knowledge base

<Info>
  The response includes all configurable parameters for the agent. Use it to export or backup an agent's complete configuration before making significant changes.
</Info>

<Note>
  Save the `requestId` from every response. You will need it if you contact Inya support to trace a specific request.
</Note>


## OpenAPI

````yaml GET /v1/agents/{botId}
openapi: 3.0.3
info:
  title: Platform Agents API
  description: API endpoints for creating, managing, and interacting with voice agents
  version: 2.1.0
servers:
  - url: https://api.inya.ai/platform
    description: Production server
security:
  - ApiKeyAuth: []
tags:
  - name: Agents
    description: Agent management operations
  - name: AgentFAQ
    description: Agent FAQ management
  - name: AgentCallTriggers
    description: Outbound call triggers
  - name: ChatSDK
    description: Chat Widget configuration
  - name: Conversations
    description: Conversation logs, statistics, and audio
paths:
  /v1/agents/{botId}:
    get:
      tags:
        - Agents
      summary: Get agent details
      description: >-
        Retrieve the complete configuration of a specific agent, including ASR,
        LLM, TTS, advance settings, pre-call variables, voicemail detection,
        call transfer, and FAQ status.
      operationId: getAgent
      parameters:
        - $ref: '#/components/parameters/AgentId'
      responses:
        '200':
          description: Agent details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StandardResponse'
              examples:
                success:
                  value:
                    status: success
                    requestId: a1b2c3d4-e5f6-7890-abcd-ef1234567890
                    message: Agent details retrieved successfully
                    response:
                      botId: fb79920229d144608ebf665a10e50275
                      botName: Support Agent
                      environment: development
                      createdAt: '2026-04-01T10:00:00Z'
                      updatedAt: '2026-07-01T12:00:00Z'
                      botDetails:
                        language:
                          - en-IN
                          - hi-IN
                        region: asia
                        timeZone: Asia/Kolkata
                        description: Handles inbound customer support calls.
                      overview:
                        greetingMessage: Hello, how can I help you today?
                        endMessage: Thank you. Have a great day!
                        systemPrompt: You are a helpful support agent.
                        hasDynamicGreeting: false
                        languageSwitch: true
                        minWordsForLangSwitch: 2
                      asrParams:
                        provider: gnani
                        model: gnani_asr
                        language: en-IN
                      llmParams:
                        provider: gnani
                        model: Pampa Go
                        temperature: 0.5
                        maxTokens: 300
                      ttsParams:
                        provider: gnani
                        voice: Pranav
                        language: en-IN
                        ttsRate: 1
                        enableCaching: true
                      advanceSettings:
                        barge: true
                        initialMessageBarge: false
                        useDenoiser: true
                        suppressionLevel: 80
                        enableItnForAsr: false
                        maxSpeechDuration: 30
                        speechInitialSilenceTimeout: 10
                        endSilenceTimeout: 800
                        speechSegmentationSilenceTimeout: 1000
                        minWordsForBargeIn: 1
                        minTimeToBarge: 0.1
                        asrPreemptive: false
                        enableDtmf: false
                        phraseConfig:
                          phrase: []
                          phraseWeight: 0
                      faqEnabled: false
        '500':
          $ref: '#/components/responses/ServerError'
components:
  parameters:
    AgentId:
      name: botId
      in: path
      required: true
      description: Unique identifier of the agent
      schema:
        type: string
  schemas:
    StandardResponse:
      type: object
      properties:
        status:
          type: string
          example: success
        requestId:
          type: string
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        message:
          type: string
        response:
          type: object
    ErrorResponse:
      type: object
      properties:
        status:
          type: string
          example: error
        requestId:
          type: string
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        message:
          type: string
  responses:
    ServerError:
      description: Internal server error
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key with 'agents' permission

````