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

# Download Recording

> Download the finalized MP4 recording for a session.

## Overview

Returns the MP4 bytes of the most recent completed recording for the session. Call [`POST /browser/sessions/{id}/recording/stop`](/api-reference/endpoint/recording-stop) first — in-progress recordings cannot be downloaded.

Response `Content-Type` is `video/mp4` with a `Content-Disposition: attachment` header.

## Path Parameters

<ParamField path="id" type="string" required={true}>
  Browser session ID (UUID).
</ParamField>

## Example Request

<CodeGroup>
  ```bash cURL theme={null}
  curl -X GET "https://api.scrapengine.io/api/v1/browser/sessions/baa3f390-fa6e-4a24-b84a-a575a5f3a9c7/recording" \
    -H "Authorization: Bearer $SCRAPENGINE_API_KEY" \
    -o session.mp4
  ```
</CodeGroup>

## Response

### Success Response (200)

Binary MP4. Response headers:

* `Content-Type: video/mp4`
* `Content-Disposition: attachment; filename="recording-<id>.mp4"`

Save with `-o session.mp4` in cURL, or read `response.body` as bytes.

### Error Responses

| Status | Description                                          |
| ------ | ---------------------------------------------------- |
| `401`  | Unauthorized — invalid or missing API key.           |
| `404`  | Session not found, or no completed recording exists. |
| `409`  | Recording is still in progress — stop it first.      |
