# Video Transcript Scraper: Youtube, TikTok, Facebook, Loom, etc (`scraper-mind/video-transcript-scraper`) Actor

Extract clean, timestamped transcripts from YouTube, TikTok, Facebook & Loom with this powerful video transcript scraper. Supports automatic platform detection, proxy fallback, and JSON output—ideal for creators, researchers, and devs.

- **URL**: https://apify.com/scraper-mind/video-transcript-scraper.md
- **Developed by:** [Scraper Mind](https://apify.com/scraper-mind) (community)
- **Categories:** Social media, Videos, Automation
- **Stats:** 36 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$10.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

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

## 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

### Universal Video Transcript Scraper 🎬

**Universal Video Transcript Scraper**, your all-in-one **video transcript scraper** and **video transcript downloader** for YouTube, TikTok, Facebook, and Loom. Extract clean, timestamped transcripts from public videos across multiple platforms—perfect for content creators, researchers, educators, and developers.

---

### 🌟 Why Choose Universal Video Transcript Scraper?

| Feature                               | Benefit                                                                            |
| ------------------------------------- | ---------------------------------------------------------------------------------- |
| ✅ Multi-Platform Support              | Works with YouTube, TikTok, Facebook, and Loom URLs seamlessly                     |
| ✅ Automatic Platform Detection        | No need to specify source—scraper auto-detects and adapts                          |
| ✅ Unified or Platform-Specific Output | Choose “unified” format for consistency or “platform-specific” for detailed fields |
| 🛡️ Smart Proxy Fallback              | Automatically falls back from direct → datacenter → residential proxies if blocked |
| 🔄 Intelligent Retry Mechanism        | Up to 3 retries per video per proxy type with exponential backoff                  |
| 💾 Real-Time Data Saving              | Immediate result persistence ensures no data loss on interruption                  |

---

### 🔑 Key Features

* ✅ **Automatic Platform Detection**
  Detects whether a URL belongs to YouTube, TikTok, Facebook, or Loom, then applies the correct scraping logic.
* 🌐 **Unified Output Format**
  Provides a consistent JSON schema (`url`, `platform`, `video_id`, `transcript_text`, `transcript_segments`, `success`, `timestamp`) for easy downstream processing.
* 📁 **Platform-Specific Format (Optional)**
  Output includes fields unique to each platform (e.g., `duration` for YouTube segments or `start_time` for Loom) when “platform-specific” is selected.
* 🛡️ **Proxy Resilience**
  If the platform blocks requests, automatically rotates through direct, datacenter, and residential proxies to maximize success.
* 🔄 **Advanced Retry Logic**
  Retries each video up to 3 times per proxy type with exponential backoff delays to avoid rate limits.
* ⚡ **Fast & Reliable**
  Uses efficient scraping strategies (e.g., official transcript APIs, headless browsers) and intelligent delays to scrape transcripts in 1–3 seconds per video.
* 📊 **Structured Transcript Segments**
  Each transcript segment includes `text`, `start` (or `start_time`), and (where available) `duration`.
* 💾 **Live Data Persistence**
  Saves each result to the default dataset as soon as it’s ready, ensuring no data loss even if the run is interrupted.

---

### 📝 Input

Save an `input.json` file with the following structure:

```json
{
  "outputFormat": "unified",
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "startUrls": [
    {
      "url": "https://www.youtube.com/watch?v=e-ORhEE9VVg",
      "method": "GET"
    },
    {
      "url": "https://www.loom.com/share/e41353f2fe1c43eba6c6829693e0f2c5",
      "method": "GET"
    },
    {
      "url": "https://www.facebook.com/briantylercohen/videos/1201813848348387",
      "method": "GET"
    },
    {
      "url": "https://www.tiktok.com/@david.webdeveloper/video/7506519006854253847",
      "method": "GET"
    }
  ]
}
````

#### Input Fields

| Key                  | Type    | Description                                                                                                                                    |
| -------------------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `startUrls`          | array   | List of video URLs from YouTube, TikTok, Facebook, or Loom. Each entry should include `"url"` and optional `"method"` (default: `GET`).        |
| `proxyConfiguration` | object  | Proxy settings—if `useApifyProxy` is `false`, the scraper first tries direct connection, then datacenter, then residential proxies on failure. |
|  `useApifyProxy`     | boolean | `true` to enable Apify proxy (recommended for high success against strict rate limits); `false` for automatic fallback logic.                  |
| `outputFormat`       | string  | Choose between `"unified"` (default) or `"platform-specific"` to tailor JSON fields per platform.                                              |

***

### 📦 Output

Upon successful execution, the actor will produce one JSON object per video in the default dataset. Below is a sample **unified** output:

```json
{
  "url": "https://www.youtube.com/watch?v=e-ORhEE9VVg",
  "platform": "youtube",
  "video_id": "e-ORhEE9VVg",
  "transcript_text": "♪♪♪ ♪ NICE TO MEET YOU ♪ ...",
  "transcript_segments": [
    {
      "text": "♪♪♪",
      "start": 3.4,
      "duration": 4.866
    },
    {
      "text": "♪ NICE TO MEET YOU ♪",
      "start": 8.3,
      "duration": 1.266
    }
    // … more segments
  ],
  "success": true,
  "timestamp": "2025-06-02T07:56:00"
}
```

> **Note**: For Loom, `transcript_segments` entries use `start_time` instead of `start`, but both fields remain consistent in the unified schema.

#### Output Fields (Unified)

| Field                 | Type    | Description                                                                                                                                               |
| --------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`                 | string  | Original video URL as provided in `startUrls`.                                                                                                            |
| `platform`            | string  | Detected platform: `youtube`, `tiktok`, `facebook`, or `loom`.                                                                                            |
| `video_id`            | string  | Extracted video identifier (e.g., `e-ORhEE9VVg` for YouTube, `e41353f2fe1c43eba6c6829693e0f2c5` for Loom).                                                |
| `transcript_text`     | string  | Complete transcript as a single concatenated string (easy for search or content repurposing).                                                             |
| `transcript_segments` | array   | Array of segment objects. Each has:<br>• `text` (string)<br>• `start` or `start_time` (number, seconds)<br>• `duration` (number, seconds; when available) |
| `success`             | boolean | `true` if transcription succeeded; `false` if scraping failed or no transcript available.                                                                 |
| `timestamp`           | string  | ISO-format timestamp (UTC) when the transcript was scraped (e.g., `"2025-06-02T07:56:00"`).                                                               |

> If `outputFormat` is set to **platform-specific**, additional fields (e.g., `duration` for YouTube segments) will be included where supported.

***

### 🚀 How to Use (via Apify Console)

1. **Open Apify Console**
   Log in at <https://console.apify.com> and navigate to the **Actors** section.

2. **Find Your Actor**
   Search for `video-transcript-scraper` and click its card to open the details page.

3. **Configure Input**

   - In the **INPUT** tab, paste your `input.json`.
   - For **Proxy configuration**, enable **Use Apify Proxy** if desired; otherwise it will automatically fall back from direct → datacenter → residential on failures.
   - Add one or more video URLs (YouTube, Loom, Facebook, TikTok).

4. **Choose Output Format**

   - Select either **Unified Format** (consistent fields across all platforms) or **Platform-Specific Format** (detailed per-platform fields).

5. **Run the Actor**
   Click **Run** in the top-right. The actor will begin scraping transcripts and show real-time logs (including platform detection, proxy usage, and retry attempts).

6. **Monitor Progress**
   Observe logs to see when each URL is successfully scraped or if any errors occur.

7. **Access Results**
   Once complete, switch to the **OUTPUT** tab and open the **Universal Video Transcript Data** dataset.

8. **Export Data**
   Filter, preview, and export scraped transcripts to JSON or CSV for further analysis or integration.

That’s it! No coding required—leverage this **video transcript downloader** to batch-process videos from multiple platforms in one run.

***

### 🎯 Advanced Features

#### 1. Smart Proxy Management

- **Automatic Fallback**: Starts with direct connection; if blocked, switches to Datacenter (AUTO), then to Residential proxies.
- **User-Controlled Proxy Preference**: If `useApifyProxy: true`, you can specify preferred Apify Proxy Groups like `["RESIDENTIAL"]` or `["AUTO"]`.

#### 2. Intelligent Platform Detection

- Detects YouTube, TikTok, Facebook, or Loom based on URL patterns.
- Applies platform-specific scraping logic automatically (e.g., official YouTube API if available, headless browsing for Loom).

#### 3. Robust Error Handling

- **3 Retries per Proxy Type**: Each video gets 3 attempts per proxy (direct, datacenter, residential).
- **Exponential Backoff Delays**: Delays grow after each retry to respect rate limits.
- **Graceful Degradation**: A failure on one video does not stop processing of remaining URLs.

#### 4. Unified vs. Platform-Specific Output

- **Unified Format**: Consistent JSON schema across all platforms—ideal for pipelines or search indexing.
- **Platform-Specific Format**: Retains all original fields (e.g., YouTube’s `duration` per segment, TikTok’s auto-generated captions, Loom’s `start_time`).

***

### 💡 Best Use Cases

- ✍️ **Content Repurposing**
  Convert video dialogues into blog posts, articles, or social media micro-content.
- 📊 **SEO & Keyword Research**
  Use extracted transcripts to identify trending keywords, optimize on-page SEO, or analyze competitor video strategies.
- 🧠 **Academic & Market Research**
  Gather data from educational talks, interviews, or product demos across YouTube, TikTok, Facebook, and Loom for sentiment analysis.
- 🔈 **Accessibility Enhancement**
  Generate text versions of video content for hearing-impaired audiences or subtitle generation.
- 🤖 **Machine Learning & AI Training**
  Collect large corpora of spoken language transcripts to train speech-to-text models, chatbots, or sentiment classifiers.
- 📚 **E-Learning & Summarization**
  Extract lecture transcripts or tutorial dialogues for generating study notes, summaries, or flashcards.

***

### 🔧 Technical Specifications

#### Supported Video Types & Platforms

| Platform     | URL Formats                                                                                                                                               |
| ------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **YouTube**  | • Standard: `https://www.youtube.com/watch?v=VIDEO_ID`<br>• Shortened: `https://youtu.be/VIDEO_ID`<br>• Shorts: `https://www.youtube.com/shorts/VIDEO_ID` |
| **Loom**     | • Public share link: `https://www.loom.com/share/VIDEO_ID`                                                                                                |
| **Facebook** | • Public watch link: `https://www.facebook.com/watch/?v=VIDEO_ID`                                                                                         |
| **TikTok**   | • Standard: `https://www.tiktok.com/@username/video/VIDEO_ID`                                                                                             |

#### Proxy Support

- ✅ **Direct Connections**: First attempt uses no proxy.
- ✅ **Datacenter Proxies (AUTO)**: Automatic fallback upon direct-connection failure.
- ✅ **Residential Proxies**: Final fallback if datacenter proxies are blocked.
- ✅ **User-Configurable**: Enable Apify Proxy and specify groups (e.g., `["RESIDENTIAL"]` or `["AUTO"]`).

#### Performance

- **Processing Speed**: ~1–3 seconds per video (depending on transcript length and proxy delays).
- **Batch Size**: No upper limit—process unlimited URLs in one run.
- **Success Rate**: > 95% for public videos with available transcripts.
- **Retries**: Up to 6 attempts per video (3 per proxy type).

***

### 🤝 Support & Feature Requests

Need help or want to suggest improvements?

- 🐞 **Bug Reports**: Please submit an issue on the Apify community with the video URL and error details.
- 💡 **Feature Requests**: Want bulk export to Google Sheets, speaker diarization, subtitle formatting, or support for new platforms? Let us know!
- 📧 **Contact**: Reach out via <scrapermindapi@gmail.com>.

Your feedback drives ongoing improvements to this **video transcript scraper** and **video transcript downloader**. Thank you for using Universal Video Transcript Scraper!

# Actor input Schema

## `startUrls` (type: `array`):

Enter one or more video URLs from YouTube, TikTok, Facebook, or Loom. The scraper will automatically detect the platform.

## `proxyConfiguration` (type: `object`):

Proxy settings for the scraper. If disabled, will use direct connections with automatic fallback to datacenter and residential proxies if platforms block requests.

## `outputFormat` (type: `string`):

Choose the format for transcript output

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.youtube.com/watch?v=e-ORhEE9VVg"
    },
    {
      "url": "https://www.loom.com/share/e41353f2fe1c43eba6c6829693e0f2c5"
    },
    {
      "url": "https://www.facebook.com/watch/?v=123456789"
    },
    {
      "url": "https://www.tiktok.com/@username/video/1234567890"
    }
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "outputFormat": "unified"
}
```

# 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 = {
    "startUrls": [
        {
            "url": "https://www.youtube.com/watch?v=e-ORhEE9VVg"
        },
        {
            "url": "https://www.loom.com/share/e41353f2fe1c43eba6c6829693e0f2c5"
        },
        {
            "url": "https://www.facebook.com/watch/?v=123456789"
        },
        {
            "url": "https://www.tiktok.com/@username/video/1234567890"
        }
    ],
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scraper-mind/video-transcript-scraper").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 = {
    "startUrls": [
        { "url": "https://www.youtube.com/watch?v=e-ORhEE9VVg" },
        { "url": "https://www.loom.com/share/e41353f2fe1c43eba6c6829693e0f2c5" },
        { "url": "https://www.facebook.com/watch/?v=123456789" },
        { "url": "https://www.tiktok.com/@username/video/1234567890" },
    ],
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("scraper-mind/video-transcript-scraper").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 '{
  "startUrls": [
    {
      "url": "https://www.youtube.com/watch?v=e-ORhEE9VVg"
    },
    {
      "url": "https://www.loom.com/share/e41353f2fe1c43eba6c6829693e0f2c5"
    },
    {
      "url": "https://www.facebook.com/watch/?v=123456789"
    },
    {
      "url": "https://www.tiktok.com/@username/video/1234567890"
    }
  ],
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call scraper-mind/video-transcript-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Video Transcript Scraper: Youtube, TikTok, Facebook, Loom, etc",
        "description": "Extract clean, timestamped transcripts from YouTube, TikTok, Facebook & Loom with this powerful video transcript scraper. Supports automatic platform detection, proxy fallback, and JSON output—ideal for creators, researchers, and devs.",
        "version": "0.1",
        "x-build-id": "ugrd8GKy0BUNYCmtW"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scraper-mind~video-transcript-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scraper-mind-video-transcript-scraper",
                "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/scraper-mind~video-transcript-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scraper-mind-video-transcript-scraper",
                "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/scraper-mind~video-transcript-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scraper-mind-video-transcript-scraper",
                "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",
                "required": [
                    "startUrls"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Video URLs",
                        "type": "array",
                        "description": "Enter one or more video URLs from YouTube, TikTok, Facebook, or Loom. The scraper will automatically detect the platform.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Proxy settings for the scraper. If disabled, will use direct connections with automatic fallback to datacenter and residential proxies if platforms block requests.",
                        "default": {}
                    },
                    "outputFormat": {
                        "title": "Output Format",
                        "enum": [
                            "unified",
                            "platform-specific"
                        ],
                        "type": "string",
                        "description": "Choose the format for transcript output",
                        "default": "unified"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
