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

# Voice Gateway Verbs

> Voice Gateway includes verbs to help you build voice AI Agents, including dial, hangup, listen, gather, and speech configuration with Code Node examples.

To create a voice AI Agent,
you need to build a Flow on the Cognigy.AI side using [Voice Nodes](/ai/agents/develop/node-reference/voice/voice-gateway/overview).
These Nodes provide the basic verbs required for your voice agent. If you require additional verbs that are not available in the Voice Nodes, you can add them using a [Code Node](#custom-verbs-in-code-nodes).
For incoming calls, you can use Voice Nodes and a Code Node. However, for outgoing calls, you must specify all parameters in the call request body, as described in the [Advanced Configuration Request](/voice-gateway/creating-outbound-calls#advanced-configuration-request) section.

## List of Verbs

The table presents the list of supported verbs.

| Verb                                                               | Description                                                                                                                                                                                                                               | Node Analogue                                                                                                                             |
| ------------------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| [Answering Machine Detection](/voice-gateway/references/verbs/amd) | This verb can be enabled on outbound calls to provide an indication of whether a call has been answered by a person or a machine. To use this feature, provide the `amd` property in a [dial](/voice-gateway/references/verbs/dial) verb. | [Transfer](/ai/agents/develop/node-reference/voice/voice-gateway/transfer) (**Dial > Answering Machine Detection** settings)              |
| [Config](/voice-gateway/references/verbs/config)                   | This verb lets the developer modify the default speech settings for the current session or to collect speech or DTMF input in the background while other verbs are executed.                                                              | [Set Session Config](/ai/agents/develop/node-reference/voice/voice-gateway/set-session-config)                                            |
| [Dial](/voice-gateway/references/verbs/dial)                       | This verb initiates a new call by connecting to a telephone number, registered SIP user, or SIP URI.                                                                                                                                      | [Transfer](/ai/agents/develop/node-reference/voice/voice-gateway/transfer) (**Dial** settings)                                            |
| [Dub](/voice-gateway/references/verbs/dub)                         | This verb adds a background audio track to the conversation.                                                                                                                                                                              | [Set Session Config](/ai/agents/develop/node-reference/voice/voice-gateway/set-session-config)                                            |
| [DTMF](/voice-gateway/references/verbs/dtmf)                       | This verb generates a string of DTMF digit signals, which are transmitted as RTP payloads according to [RFC 2833](https://datatracker.ietf.org/doc/html/rfc2833).                                                                         | [DTMF](/ai/agents/develop/node-reference/voice/voice-gateway/dtmf)                                                                        |
| [Gather](/voice-gateway/references/verbs/gather)                   | This verb collects DTMF or speech input.                                                                                                                                                                                                  | -                                                                                                                                         |
| [Hangup](/voice-gateway/references/verbs/hangup)                   | This verb terminates the call and ends the session.                                                                                                                                                                                       | [Hangup](/ai/agents/develop/node-reference/voice/voice-gateway/hangup)                                                                    |
| [Listen](/voice-gateway/references/verbs/listen)                   | This verb sends real-time audio streams to your application over a WebSocket connection for processing. The [Call Recording](/voice-gateway/webapp/recent-calls#call-recordings) feature relies on this verb.                             | [Call Recording](/ai/agents/develop/node-reference/voice/voice-gateway/call-recording)                                                    |
| [Play](/voice-gateway/references/verbs/play)                       | This verb streams recorded audio to a call.                                                                                                                                                                                               | [Play](/ai/agents/develop/node-reference/voice/voice-gateway/play)                                                                        |
| [Say](/ai/agents/develop/node-reference/basic/say)                 | This verb sends synthesized speech to the remote party. The text provided may be either plain text or use SSML tags.                                                                                                                      | [Say](/ai/agents/develop/node-reference/basic/say)                                                                                        |
| [SIP:request](/voice-gateway/references/verbs/sip-request)         | This verb sends a SIP `INFO`, `NOTIFY`, or `MESSAGE` request on an established call, which is an in-dialog request.                                                                                                                       | [Send Metadata](/ai/agents/develop/node-reference/voice/voice-gateway/send-metadata)                                                      |
| [SIP:refer](/voice-gateway/references/verbs/sip-refer)             | This verb transfers a call and disconnect.                                                                                                                                                                                                | [Transfer](/ai/agents/develop/node-reference/voice/voice-gateway/transfer) (**Refer** settings)                                           |
| [Transcribe](/voice-gateway/references/verbs/transcribe)           | This verb generates real-time transcriptions of speech.                                                                                                                                                                                   | [Set Session Config](/ai/agents/develop/node-reference/voice/voice-gateway/set-session-config) (**Recognizer - Speech-To-Text** settings) |

## Custom Verbs in Code Nodes

The example shows how a [Code Node](/ai/for-developers/code/overview) can send a customized [`dial`](/voice-gateway/references/verbs/dial) verb with an Answering Machine Detection
(`amd`) action hook.

```js theme={null}
api.output(null, {
    "_cognigy": {
        "_voice-gateway2": {
            "json": {
                "verb": "dial",
                "actionHook": "dial",
                "callerId": "+49XXXXXXXXXXX",
                "target": [
                    {
                        "type": "phone",
                        "number": "+49XXXXXXXXXXX",
                    }
                ],
                "amd": {
                    "actionHook": "amd",
                    "recognizer": {
                        "vendor": "microsoft",
                        "language": "en-US",
                    }
                }
            }
        }
    }
})
```

## More Information

* [Voice Gateway Events](/voice-gateway/references/events/overview)
