# Chaturbate Downloader (`serpxxx/chaturbate-video-downloader`) Actor

Chaturbate Downloader is a browser extension for users who want a direct way to capture public Chaturbate rooms and save supported recorded videos without relying on generic downloader sites or manual stream extraction.

- **URL**: https://apify.com/serpxxx/chaturbate-video-downloader.md
- **Developed by:** [SERP X](https://apify.com/serpxxx) (community)
- **Categories:** Videos, Automation, Social media
- **Stats:** 5 total users, 0 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Chaturbate Downloader (Browser Extension)

> Record Chaturbate live streams and download saved videos as MP4 files for offline viewing.

Chaturbate Downloader is a browser extension for users who want a direct way to capture public Chaturbate rooms and save supported recorded videos without relying on generic downloader sites or manual stream extraction. It detects active media in your browser session, lets you choose from available qualities, and saves finished downloads as MP4 for easier playback later.

- Record active Chaturbate live streams while they are still online
- Download supported saved videos from model pages
- Choose from the stream qualities exposed on the page
- Save finished files as standard MP4
- Use in-page controls, popup controls, or right-click actions

### Links

- :rocket: Get it here: [Chaturbate Downloader](https://serp.ly/chaturbate-downloader)
- :new: Latest release: [GitHub Releases](https://github.com/serpapps/chaturbate-downloader/releases/latest)
- :question: Help center: [SERP Help](https://help.serp.co/en/)
- :beetle: Report bugs: [GitHub Issues](https://github.com/serpapps/chaturbate-downloader/issues)
- :bulb: Request features: [Feature Requests](https://github.com/serpapps/chaturbate-downloader/issues)

### Preview

![Chaturbate Downloader workflow preview](assets/workflow-preview.webp)

### Table of Contents

- [Why Chaturbate Downloader](#why-chaturbate-downloader)
- [Features](#features)
- [How It Works](#how-it-works)
- [Step-by-Step Tutorial: How to Download Videos from Chaturbate](#step-by-step-tutorial-how-to-download-videos-from-chaturbate)
- [Supported Formats](#supported-formats)
- [Who It's For](#who-its-for)
- [Common Use Cases](#common-use-cases)
- [Troubleshooting](#troubleshooting)
- [Trial & Access](#trial--access)
- [Installation Instructions](#installation-instructions)
- [FAQ](#faq)
- [Notes](#notes)
- [License](#license)
- [About Chaturbate](#about-chaturbate)

### Why Chaturbate Downloader

Chaturbate is built around live rooms, which means timing matters. If a stream ends before you capture it, the moment is gone. Generic downloaders often fail because they do not handle the site-specific stream delivery cleanly, and right-click saving is not a real option on active broadcasts.

Chaturbate Downloader is designed around that workflow. It works inside the browser you are already using, adds direct download controls, and turns supported live or saved media into MP4 files you can watch again later without juggling desktop tools.

### Features

- Live stream recording for public Chaturbate rooms
- Saved video downloads from supported Chaturbate pages
- Quality selection for available stream variants
- In-page controls on supported video pages
- Popup workflow for starting and managing captures
- Right-click access for a faster recording flow
- MP4 output for easier playback and transfer
- Automatic saving into a dedicated CHATURBATE folder
- Cross-browser support for Chrome, Edge, Brave, Opera, Firefox, Whale, and Yandex

### How It Works

1. Install the extension from the latest release.
2. Open Chaturbate and visit a live room or supported saved video page.
3. Start playback so the extension can detect the media.
4. Open the popup or use the on-page controls.
5. Choose the quality or stream option you want.
6. Record the live room or download the saved video.
7. Save the final MP4 file locally.

### Step-by-Step Tutorial: How to Download Videos from Chaturbate

1. Install Chaturbate Downloader from the latest GitHub release.
2. Open Chaturbate and sign in if the page you want requires account access.
3. Visit the live room or saved video page you want to keep.
4. Let the player load fully and press play.
5. Click the extension button or use the on-page download control.
6. Review the quality options shown by the extension.
7. For live rooms, start recording and stop it when the session is finished.
8. For saved videos, click download and wait for the MP4 export to complete.
9. Open the finished file from your Downloads folder.

### Supported Formats

- Input: Chaturbate live streams
- Input: Chaturbate saved videos
- Output: MP4

Saved files use MP4 so they are easier to replay on standard media players, move between devices, or archive locally.

### Who It's For

- Chaturbate viewers who want to keep public live rooms before they end
- Users who want offline access to supported saved videos
- People archiving content they are permitted to keep
- Anyone who wants a browser-based workflow instead of manual stream tools
- Users who want cleaner capture controls than generic downloader sites

### Common Use Cases

- Record a Chaturbate live room to watch later
- Download a saved video from a model page
- Keep local copies of content before it disappears from easy access
- Download the best quality exposed by the page
- Start recording directly from the player or extension popup

### Troubleshooting

**The extension is not detecting the stream**  
Press play first and wait a few seconds so the stream has time to initialize.

**The page control is missing**  
Open the extension popup directly. Some supported pages work better through the popup UI.

**Only one quality option is listed**  
That usually means the page is exposing a single playable stream variant.

**The recording stopped too early**  
Check whether the live session ended or your internet connection dropped during capture.

**The page requires account or paid access**  
The extension only works on media you can already open and play in your active browser session.

### Trial & Access

- Includes **3 free downloads** so you can test the workflow first
- Email sign-in uses secure one-time password verification
- No credit card required for the trial
- Unlimited downloads are available with a paid license

Start here: [https://serp.ly/chaturbate-downloader](https://serp.ly/chaturbate-downloader)

### Installation Instructions

1. Open the latest release page:
   [https://github.com/serpapps/chaturbate-downloader/releases/latest](https://github.com/serpapps/chaturbate-downloader/releases/latest)
2. Download the extension build for your browser.
3. Install the extension.
4. Open Chaturbate and navigate to a live room or supported saved video.
5. Use the extension controls to start recording or downloading.

### FAQ

**Can I record Chaturbate live streams?**  
Yes. Public Chaturbate live rooms can be recorded while they are broadcasting.

**Can I download saved videos too?**  
Yes. The extension supports saved Chaturbate videos on supported pages.

**What file format do downloads use?**  
Videos are saved as MP4 files.

**Where are videos saved?**  
They are saved to your default Downloads location, typically inside a CHATURBATE subfolder.

**Do I need extra software?**  
No. Everything runs through the browser extension.

### Notes

- Only download content you own or have explicit permission to save
- An internet connection is required for live capture and downloads
- Live recording only works while the creator is actively streaming
- Some pages may require account access, paid access, or membership
- Source quality depends on the media exposed by Chaturbate

### License

This repository includes an MIT license in [LICENSE.md](LICENSE.md).

### About Chaturbate

Chaturbate combines live rooms with saved media, which makes offline access awkward for users who just want a local copy of supported content. Chaturbate Downloader simplifies that process inside the browser with direct capture controls and MP4 output for later playback.

# Actor input Schema

## `listingNotice` (type: `string`):

Informational listing-only field for the current actor surface.

## Actor input object example

```json
{
  "listingNotice": "No runtime input is required yet. See the README for the current workflow."
}
````

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("serpxxx/chaturbate-video-downloader").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("serpxxx/chaturbate-video-downloader").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call serpxxx/chaturbate-video-downloader --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=serpxxx/chaturbate-video-downloader",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Chaturbate Downloader",
        "description": "Chaturbate Downloader is a browser extension for users who want a direct way to capture public Chaturbate rooms and save supported recorded videos without relying on generic downloader sites or manual stream extraction.",
        "version": "0.0",
        "x-build-id": "6jHciueIwjITsCdXe"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/serpxxx~chaturbate-video-downloader/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-serpxxx-chaturbate-video-downloader",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/serpxxx~chaturbate-video-downloader/runs": {
            "post": {
                "operationId": "runs-sync-serpxxx-chaturbate-video-downloader",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/serpxxx~chaturbate-video-downloader/run-sync": {
            "post": {
                "operationId": "run-sync-serpxxx-chaturbate-video-downloader",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "listingNotice": {
                        "title": "Listing notice",
                        "type": "string",
                        "description": "Informational listing-only field for the current actor surface.",
                        "default": "No runtime input is required yet. See the README for the current workflow."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
