***

title: Calling
slug: /reference/typescript/rest/calling
description: REST-based call control namespace with 37 commands for managing active calls.
max-toc-depth: 3
---------------------

For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

[restclient]: /docs/server-sdks/reference/typescript/rest/client

The `CallingNamespace` provides REST-based call control through the
[`RestClient`][restclient]. All 37 commands are dispatched
as POST requests to a single endpoint (`/api/calling/calls`) with a `command` field
identifying the operation.

Access via `client.calling` on a [`RestClient`][restclient] instance.

<Note>
  Unlike the RELAY client which uses persistent WebSocket connections, the Calling namespace
  sends each command as an independent HTTP request. This is suitable for server-side
  orchestration where you do not need real-time event streams.
</Note>

## **Methods**

### Call Lifecycle

<CardGroup cols={3}>
  <Card title="dial" href="/docs/server-sdks/reference/typescript/rest/calling/dial">
    Initiate a new outbound call via REST.
  </Card>

  <Card title="update" href="/docs/server-sdks/reference/typescript/rest/calling/update">
    Update parameters on an active call via REST.
  </Card>

  <Card title="end" href="/docs/server-sdks/reference/typescript/rest/calling/end">
    End an active call via REST.
  </Card>
</CardGroup>

### Call Control

<CardGroup cols={2}>
  <Card title="transfer" href="/docs/server-sdks/reference/typescript/rest/calling/transfer">
    Transfer an active call to a new destination via REST.
  </Card>

  <Card title="disconnect" href="/docs/server-sdks/reference/typescript/rest/calling/disconnect">
    Disconnect (unbridge) a connected call without ending either leg via REST.
  </Card>
</CardGroup>

### Media and Playback

<CardGroup cols={3}>
  <Card title="play" href="/docs/server-sdks/reference/typescript/rest/calling/play">
    Play audio or text-to-speech on an active call via REST.
  </Card>

  <Card title="playPause" href="/docs/server-sdks/reference/typescript/rest/calling/play-pause">
    Pause an active playback on a call via REST.
  </Card>

  <Card title="playResume" href="/docs/server-sdks/reference/typescript/rest/calling/play-resume">
    Resume a paused playback on a call via REST.
  </Card>

  <Card title="playStop" href="/docs/server-sdks/reference/typescript/rest/calling/play-stop">
    Stop an active playback on a call via REST.
  </Card>

  <Card title="playVolume" href="/docs/server-sdks/reference/typescript/rest/calling/play-volume">
    Adjust the volume of an active playback on a call via REST.
  </Card>
</CardGroup>

### Recording

<CardGroup cols={3}>
  <Card title="record" href="/docs/server-sdks/reference/typescript/rest/calling/record">
    Start recording an active call via REST.
  </Card>

  <Card title="recordPause" href="/docs/server-sdks/reference/typescript/rest/calling/record-pause">
    Pause an active recording on a call via REST.
  </Card>

  <Card title="recordResume" href="/docs/server-sdks/reference/typescript/rest/calling/record-resume">
    Resume a paused recording on a call via REST.
  </Card>

  <Card title="recordStop" href="/docs/server-sdks/reference/typescript/rest/calling/record-stop">
    Stop an active recording on a call via REST.
  </Card>
</CardGroup>

### Input Collection

<CardGroup cols={3}>
  <Card title="collect" href="/docs/server-sdks/reference/typescript/rest/calling/collect">
    Collect user input (DTMF or speech) on an active call via REST.
  </Card>

  <Card title="collectStop" href="/docs/server-sdks/reference/typescript/rest/calling/collect-stop">
    Stop an active input collection on a call via REST.
  </Card>

  <Card title="collectStartInputTimers" href="/docs/server-sdks/reference/typescript/rest/calling/collect-start-input-timers">
    Manually start input timers for a collection on a call via REST.
  </Card>
</CardGroup>

### Detection

<CardGroup cols={2}>
  <Card title="detect" href="/docs/server-sdks/reference/typescript/rest/calling/detect">
    Start detection (answering machine, fax, DTMF) on a call via REST.
  </Card>

  <Card title="detectStop" href="/docs/server-sdks/reference/typescript/rest/calling/detect-stop">
    Stop an active detector on a call via REST.
  </Card>
</CardGroup>

### Audio Tap

<CardGroup cols={2}>
  <Card title="tap" href="/docs/server-sdks/reference/typescript/rest/calling/tap">
    Tap call audio to an external endpoint via REST.
  </Card>

  <Card title="tapStop" href="/docs/server-sdks/reference/typescript/rest/calling/tap-stop">
    Stop an active audio tap on a call via REST.
  </Card>
</CardGroup>

### Audio Streaming

<CardGroup cols={2}>
  <Card title="stream" href="/docs/server-sdks/reference/typescript/rest/calling/stream">
    Stream call audio to a WebSocket endpoint via REST.
  </Card>

  <Card title="streamStop" href="/docs/server-sdks/reference/typescript/rest/calling/stream-stop">
    Stop an active audio stream on a call via REST.
  </Card>
</CardGroup>

### Noise Reduction

<CardGroup cols={2}>
  <Card title="denoise" href="/docs/server-sdks/reference/typescript/rest/calling/denoise">
    Enable noise reduction on an active call via REST.
  </Card>

  <Card title="denoiseStop" href="/docs/server-sdks/reference/typescript/rest/calling/denoise-stop">
    Disable noise reduction on an active call via REST.
  </Card>
</CardGroup>

### Transcription and Translation

<CardGroup cols={3}>
  <Card title="transcribe" href="/docs/server-sdks/reference/typescript/rest/calling/transcribe">
    Start transcribing speech on an active call via REST.
  </Card>

  <Card title="transcribeStop" href="/docs/server-sdks/reference/typescript/rest/calling/transcribe-stop">
    Stop an active transcription on a call via REST.
  </Card>

  <Card title="liveTranscribe" href="/docs/server-sdks/reference/typescript/rest/calling/live-transcribe">
    Start live transcription with partial results on a call via REST.
  </Card>

  <Card title="liveTranslate" href="/docs/server-sdks/reference/typescript/rest/calling/live-translate">
    Start live translation on an active call via REST.
  </Card>
</CardGroup>

### AI Session Control

<CardGroup cols={3}>
  <Card title="aiMessage" href="/docs/server-sdks/reference/typescript/rest/calling/ai-message">
    Send a message to an active AI session on a call via REST.
  </Card>

  <Card title="aiHold" href="/docs/server-sdks/reference/typescript/rest/calling/ai-hold">
    Put an active AI session on hold via REST.
  </Card>

  <Card title="aiUnhold" href="/docs/server-sdks/reference/typescript/rest/calling/ai-unhold">
    Resume a held AI session on a call via REST.
  </Card>

  <Card title="aiStop" href="/docs/server-sdks/reference/typescript/rest/calling/ai-stop">
    Stop an active AI session on a call via REST.
  </Card>
</CardGroup>

### Fax

<CardGroup cols={2}>
  <Card title="sendFaxStop" href="/docs/server-sdks/reference/typescript/rest/calling/send-fax-stop">
    Stop an in-progress fax send operation on a call via REST.
  </Card>

  <Card title="receiveFaxStop" href="/docs/server-sdks/reference/typescript/rest/calling/receive-fax-stop">
    Stop an in-progress fax receive operation on a call via REST.
  </Card>
</CardGroup>

### SIP

<CardGroup cols={2}>
  <Card title="refer" href="/docs/server-sdks/reference/typescript/rest/calling/refer">
    Send a SIP REFER to transfer a call at the SIP level via REST.
  </Card>
</CardGroup>

### Custom Events

<CardGroup cols={2}>
  <Card title="userEvent" href="/docs/server-sdks/reference/typescript/rest/calling/user-event">
    Send custom user-defined events on an active call via REST.
  </Card>
</CardGroup>