***

title: Calls
slug: /reference/typescript/rest/compat/calls
description: Manage calls with CRUD operations, in-call recording, and media streaming.
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

[list]: /docs/server-sdks/reference/typescript/rest/compat/calls/list

[create]: /docs/server-sdks/reference/typescript/rest/compat/calls/create

[get]: /docs/server-sdks/reference/typescript/rest/compat/calls/get

[update]: /docs/server-sdks/reference/typescript/rest/compat/calls/update

[delete]: /docs/server-sdks/reference/typescript/rest/compat/calls/delete

[startrecording]: /docs/server-sdks/reference/typescript/rest/compat/calls/start-recording

[updaterecording]: /docs/server-sdks/reference/typescript/rest/compat/calls/update-recording

[startstream]: /docs/server-sdks/reference/typescript/rest/compat/calls/start-stream

[stopstream]: /docs/server-sdks/reference/typescript/rest/compat/calls/stop-stream

Manage calls with CRUD operations, plus sub-resources for in-call recording
and streaming. Uses POST for updates (Twilio convention).

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

```typescript {8}
import { RestClient } from "@signalwire/sdk";

const client = new RestClient({
  project: "your-project-id",
  token: "your-api-token",
  host: "your-space.signalwire.com",
});

const calls = await client.compat.calls.list();
```

## **Methods**

### Call CRUD

<CardGroup cols={3}>
  <Card title="list" href="/docs/server-sdks/reference/typescript/rest/compat/calls/list">
    List calls in the account.
  </Card>

  <Card title="create" href="/docs/server-sdks/reference/typescript/rest/compat/calls/create">
    Initiate a new outbound call.
  </Card>

  <Card title="get" href="/docs/server-sdks/reference/typescript/rest/compat/calls/get">
    Retrieve a single call by SID.
  </Card>

  <Card title="update" href="/docs/server-sdks/reference/typescript/rest/compat/calls/update">
    Update an active call.
  </Card>

  <Card title="delete" href="/docs/server-sdks/reference/typescript/rest/compat/calls/delete">
    Delete a call record.
  </Card>
</CardGroup>

### Recording

<CardGroup cols={2}>
  <Card title="startRecording" href="/docs/server-sdks/reference/typescript/rest/compat/calls/start-recording">
    Start recording an active call.
  </Card>

  <Card title="updateRecording" href="/docs/server-sdks/reference/typescript/rest/compat/calls/update-recording">
    Update a call recording (pause, resume, or stop).
  </Card>
</CardGroup>

### Streaming

<CardGroup cols={2}>
  <Card title="startStream" href="/docs/server-sdks/reference/typescript/rest/compat/calls/start-stream">
    Start a media stream on an active call.
  </Card>

  <Card title="stopStream" href="/docs/server-sdks/reference/typescript/rest/compat/calls/stop-stream">
    Stop a media stream on a call.
  </Card>
</CardGroup>