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

# updateRecording()

> Updates the layout of an active cloud recording.

<Badge color="blue">Paid plans only</Badge>

`updateRecording(options)`

Only applies to recordings using the `"cloud"` [recording type](/docs/guides/features/recording). Requires the caller to be [an owner or recording admin](/reference/rest-api/meeting-tokens/create-meeting-token#body-properties-permissions) (a participant with `'recording'` in their `canAdmin` permission).

## Parameters

<ParamField body="layout" type="DailyStreamingLayoutConfig">
  The new layout configuration. See [`DailyStreamingLayoutConfig`](/reference/react-native/types/daily-streaming-layout-config) for all presets and options.
</ParamField>

<ParamField body="instanceId" type="string">
  The UUID of the recording instance to update. Omit to update the default instance.
</ParamField>

## Return value

Returns `void`.

## Example

```javascript theme={null}
// Switch to single-participant layout
call.updateRecording({
  layout: {
    preset: 'single-participant',
    session_id: 'abcd123...',
  },
});

// Update a specific instance with a custom VCS layout
call.updateRecording({
  instanceId: '00000000-0000-4000-8000-000000000000',
  layout: {
    preset: 'custom',
    composition_params: {
      mode: 'dominant',
      showTextOverlay: true,
      'text.content': 'Hello',
      'videoSettings.roundedCorners': true,
    },
  },
});
```

## See also

<CardGroup>
  <Card title="Types" icon="t" iconType="solid">
    * [DailyStreamingOptions](/reference/react-native/types/daily-streaming-options)
    * [DailyStreamingLayoutConfig](/reference/react-native/types/daily-streaming-layout-config)
  </Card>

  <Card title="Methods" icon="code" iconType="solid">
    * [startRecording()](/reference/react-native/instance-methods/start-recording)
    * [stopRecording()](/reference/react-native/instance-methods/stop-recording)
    * [updateLiveStreaming()](/reference/react-native/instance-methods/update-live-streaming)
  </Card>

  <Card title="Events" icon="bolt" iconType="solid">
    * [Recording events](/reference/react-native/events/recording-events)
  </Card>

  <Card title="Guides" icon="book-open" iconType="solid">
    * [Recording](/docs/guides/features/recording)
  </Card>
</CardGroup>
