# Twitter (X.com) User Info Scraper (`xtdata/twitter-x-user-info-scraper`) Actor

Extract comprehensive Twitter (X.com) data with our User Info Scraper. Scrape detailed profiles, followers, and following lists by username or numeric ID. Supports batch processing, pagination, and custom mapping. Reliable, high-speed, and requires no login. Perfect for professional lead generation.

- **URL**: https://apify.com/xtdata/twitter-x-user-info-scraper.md
- **Developed by:** [xtdata](https://apify.com/xtdata) (community)
- **Categories:** News, Social media, Lead generation
- **Stats:** 3 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.40 / 1,000 follower data

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

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

## Twitter X.com User Info Scraper — Profile, Followers & Following Extraction

Extract detailed user profile data, followers lists, and following lists from Twitter (X.com). Supports batch lookups by username or user ID.

### Key Features

* **Three Powerful Actions:**
    * **Get User Info** — Retrieve full profile details for one or more users by username or user ID.
    * **Get Followers** — Scrape the followers list for any public Twitter/X account with pagination.
    * **Get Following** — Scrape the following (friends) list for any public Twitter/X account with pagination.

* **Flexible Input:**
    * Look up users by **username** (e.g., `elonmusk`) or **user ID** (e.g., `44196397`).
    * Process **multiple** usernames and user IDs in a single run.

* **Rich Metadata:**
    * Followers and following results include `searchTerms` metadata showing which user was queried.

* **Built-in Concurrency & Pagination:**
    * Efficiently paginates through large follower/following lists.
    * Processes multiple targets concurrently for fast extraction.

* **Cost-Effective & Event-Driven:**
    * Pay-per-result charging model.

### Use Cases

* **Audience Analysis** — Understand the followers of any public account.
* **Influencer Research** — Compare follower/following networks across accounts.
* **Lead Generation** — Extract user profiles that follow specific accounts.
* **Network Mapping** — Build social graphs by scraping followers and following lists.
* **Academic Research** — Gather user-centric data for social media studies.

### Quick Start Examples

**Get user profiles for multiple users:**

```json
{
    "startUrls": ["https://x.com/apify"],
    "usernames": ["elonmusk", "nasa"],
    "userIds": ["44196397"],
    "shouldScrapeUserInfo": true,
    "shouldScrapeFollowers": false,
    "shouldScrapeFollowings": false
}
````

**Get followers of a user (by username):**

```json
{
    "usernames": ["elonmusk"],
    "shouldScrapeUserInfo": false,
    "shouldScrapeFollowers": true,
    "shouldScrapeFollowings": false,
    "maxItems": 100
}
```

**Get following list (by user ID):**

```json
{
    "userIds": ["44196397"],
    "shouldScrapeUserInfo": false,
    "shouldScrapeFollowers": false,
    "shouldScrapeFollowings": true,
    "maxItems": 50
}
```

### Input Parameters

| Field | Type | Required | Description | Example |
|---|---|---|---|---|
| `startUrls` | `string[]` | ❌ | Twitter (X) Profile URLs. Usernames will be extracted automatically. | `["https://x.com/apify"]` |
| `usernames` | `string[]` | ❌ | Twitter/X usernames (without @). Provide usernames, userIds, or both. | `["elonmusk", "nasa"]` |
| `userIds` | `string[]` | ❌ | Twitter/X numeric user IDs. Provide usernames, userIds, or both. | `["44196397"]` |
| `shouldScrapeUserInfo` | `boolean` | ❌ | Enable to scrape user profile information (default: true). | `true` |
| `shouldScrapeFollowers` | `boolean` | ❌ | Enable to also scrape the followers list for each user (default: false). | `true` |
| `shouldScrapeFollowings` | `boolean` | ❌ | Enable to also scrape the following list for each user (default: false). | `true` |
| `maxItems` | `integer` | ❌ | Max followers/following per user (default: 20). Only for followers/following extraction. | `100` |
| `customMapFunction` | `string` | ❌ | JavaScript function to transform each result object. Not for filtering. | `"(object) => { return {...object} }"` |

### Output Examples

#### Get User Info Output

```json
[
    {
        "id": "44196397",
        "name": "Elon Musk",
        "username": "elonmusk",
        "description": "nothing",
        "followersCount": 137736948,
        "followingCount": 264,
        "tweetCount": 25314,
        "likeCount": 22381,
        "listedCount": 121312,
        "mediaCount": 1526,
        "createdAt": "Tue Jun 02 20:12:29 +0000 2009",
        "location": "Trøllheim",
        "verified": false,
        "isBlueVerified": false,
        "profileImageUrl": "https://pbs.twimg.com/profile_images/1590968738358079488/IY9Gx6Ok_normal.jpg",
        "profileBannerUrl": "https://pbs.twimg.com/profile_banners/44196397/1576183471",
        "profileUrl": "https://x.com/elonmusk",
        "protected": false,
        "pinned_tweet_ids_str": ["1652849795336159233"]
    }
]
```

#### Get Followers Output

```json
[
    {
        "id": "2990041791",
        "name": "🌟🌟 Bakr FARIS 🌟🌟🌟",
        "username": "FarisBakr",
        "description": "Faris Ahmed Bakr. ingénieur en informatique.",
        "followersCount": 7385,
        "followingCount": 4047,
        "tweetCount": 86295,
        "likeCount": 138056,
        "listedCount": 0,
        "mediaCount": 5619,
        "createdAt": "Wed Jan 21 15:34:59 +0000 2015",
        "location": "Casablanca, Grand Casablanca",
        "verified": false,
        "isBlueVerified": false,
        "profileImageUrl": "https://pbs.twimg.com/profile_images/1614598066509602816/BKSi0VBD_normal.jpg",
        "profileBannerUrl": "https://pbs.twimg.com/profile_banners/2990041791/1421944124",
        "profileUrl": "https://x.com/FarisBakr",
        "protected": false,
        "pinned_tweet_ids_str": ["755286242946904068"],
        "searchTerms": "elonmusk"
    }
]
```

#### Get Following Output

Same structure as followers, with `searchTerms` indicating the queried user.

### Usage Guidelines

- **Data Limits:** Ensure you understand the event limit configuration as the actor runs in pay-per-result mode.
- **Respect Twitter's Terms of Service:** Always use this tool ethically and responsibly.
- **Concurrent Batches:** If passing many usernames or IDs, the Actor natively parallelizes requests. Ensure memory settings can accommodate the payload.

### Ethical Use and Data Practices

Our actor operates without logging in to X.com. This means it does not implicitly accept any Terms of Service (ToS)
that require a login, as we only process data that is publicly displayed and accessible to everyone without
authentication.

We are fully committed to the principle of privacy by design and by default. All data collected explicitly excludes
sensitive personal information or non-public data.

Furthermore, our actor runs on Apify, an EU-based company, which means our operations are designed to be compliant with
relevant EU data protection regulations, including GDPR, where applicable. You can find more information about the
legality of web scraping on Apify's blog: https://blog.apify.com/is-web-scraping-legal/

We have implemented robust technical measures to ensure the actor operates gently and does not impose an undue burden on
X.com's servers. Our sole purpose is to facilitate responsible research and public data analysis, and we strictly
prohibit any use that could cause harm to any party or the platform itself.

### Troubleshooting

- If you encounter rate limiting, check your Apify workspace event allocation limits.
- Ensure `usernames` are plain handles without the `@` prefix. Starting URLs can also be used.
- The `maxItems` field only applies when `shouldScrapeFollowers` or `shouldScrapeFollowings` is enabled.
- For user ID lookups in followers/following mode, the actor first resolves the ID to a username.

### Get Started

Start scraping Twitter user data today! This Actor provides a powerful, flexible, and cost-effective solution for
targeted user profile and network extraction.

#### **1. TikTok Actors**

|                                                                                                                                     |                                                                                                       |                                                                                            |
|-------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------|--------------------------------------------------------------------------------------------|
| [⚡ Fast TikTok API (No WM)](https://apify.com/novi/fast-tiktok-api?fpr=7hce1m)                                                      | [👤 Tiktok User Profile API](https://apify.com/novi/tiktok-user-info-api?fpr=7hce1m)                  | [🔍 Advanced Search TikTok](https://apify.com/novi/advanced-search-tiktok-api?fpr=7hce1m)  |
| [🔎 TikTok Search Scraper](https://apify.com/novi/tiktok-search-api?fpr=7hce1m)                                                     | [📈 Tiktok Trend API](https://apify.com/novi/tiktok-trend-api?fpr=7hce1m)                             | [💬 TikTok Comment API](https://apify.com/novi/tiktok-comment-api?fpr=7hce1m)              |
| [🎞️ TikTok Profile Videos API](https://apify.com/novi/tiktok-user-api?fpr=7hce1m)                                                  | [#️⃣ TikTok Hashtag API](https://apify.com/novi/tiktok-hashtag-api?fpr=7hce1m)                        | [🎵 TikTok Sound Music API](https://apify.com/novi/tiktok-sound-api?fpr=7hce1m)            |
| [👥 TikTok Followers API](https://apify.com/novi/tiktok-followers-api?fpr=7hce1m)                                                   | [🔢 Multiple Hashtags Scraper](https://apify.com/novi/multiple-tiktok-hashtag-scraper?fpr=7hce1m)     | [🏆 TikTok Scraper Ultimate](https://apify.com/novi/tiktok-scraper-ultimate?fpr=7hce1m)    |
| [🎶 TikTok Music Trend API](https://apify.com/novi/tiktok-music-trend-api?fpr=7hce1m)                                               | [🛍️ TikTok Shop Scraper](https://apify.com/novi/tiktok-shop-scraper?fpr=7hce1m)                      | [💰 TikTok Scraper (Pay per video)](https://apify.com/novi/fast-tiktok-scraper?fpr=7hce1m) |
| [📄 Fast TikTok API (Simple)](https://www.google.com/search?q=https://apify.com/novi/fast-tiktok-api-with-simple-result?fpr=7hce1m) | [🆔 TikTok User Profile Scraper](https://apify.com/xtdata/tiktok-user-information-scraper?fpr=7hce1m) | [📍 TikTok Location API](https://apify.com/novi/tiktok-location-api?fpr=7hce1m)            |
| [🤖 TikTok AI Video Scraper](https://apify.com/novi/tiktok-ai-video-scraper?fpr=7hce1m)                                             | [🗯️ TikTok Comment (Novi)](https://apify.com/novi/tiktok-comment-scraper?fpr=7hce1m)                 | [🏷️ TikTok Scraper (Fixed price)](https://apify.com/xtdata/tiktok-scraper?fpr=7hce1m)     |
| [🗣️ TikTok Comment + Replies](https://apify.com/xtdata/tiktok-comment-scraper?fpr=7hce1m)                                          |                                                                                                       |                                                                                            |

#### **2. X.com (Twitter) Actors**

|                                                                                       |                                                                                                           |                                                                                                           |
|---------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------|
| [🐦 X.com Twitter API Scraper](https://apify.com/xtdata/twitter-x-scraper?fpr=7hce1m) | [🐦 X.com Twitter User Tweets Scraper](https://apify.com/xtdata/twitter-x-user-tweets-scraper?fpr=7hce1m) | [🐦 X.com Twitter User Info Scraper](https://apify.com/xtdata/twitter-x-user-info-scraper?fpr=7hce1m) |

#### **3. YouTube Actors**

|                                                                                       |  |  |
|---------------------------------------------------------------------------------------|--|--|
| [📜 YouTube Transcript API](https://apify.com/novi/youtube-transcript-api?fpr=7hce1m) |  |  |

# Actor input Schema

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

Twitter (X) Profile URLs. Usernames will be extracted automatically.

## `usernames` (type: `array`):

Twitter/X usernames (without @) to look up. You can provide usernames, userIds, or both.

## `userIds` (type: `array`):

Twitter/X numeric user IDs to look up. You can provide usernames, userIds, or both.

## `shouldScrapeUserInfo` (type: `boolean`):

Enable to scrape user profile information.

## `shouldScrapeFollowers` (type: `boolean`):

Enable to also scrape the followers list for each user.

## `shouldScrapeFollowings` (type: `boolean`):

Enable to also scrape the following list for each user.

## `maxItems` (type: `integer`):

Maximum number of followers or following to retrieve per user. Only used when Scrape Followers or Scrape Followings is enabled.

## `customMapFunction` (type: `string`):

Function that takes each result object as argument and returns transformed data. Not intended for filtering.

## Actor input object example

```json
{
  "startUrls": [
    "https://x.com/apify"
  ],
  "usernames": [
    "elonmusk"
  ],
  "shouldScrapeUserInfo": true,
  "shouldScrapeFollowers": false,
  "shouldScrapeFollowings": false,
  "maxItems": 20,
  "customMapFunction": "(object) => { return {...object} }"
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# 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": [
        "https://x.com/apify"
    ],
    "usernames": [
        "elonmusk"
    ],
    "maxItems": 20,
    "customMapFunction": (object) => { return {...object} }
};

// Run the Actor and wait for it to finish
const run = await client.actor("xtdata/twitter-x-user-info-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": ["https://x.com/apify"],
    "usernames": ["elonmusk"],
    "maxItems": 20,
    "customMapFunction": "(object) => { return {...object} }",
}

# Run the Actor and wait for it to finish
run = client.actor("xtdata/twitter-x-user-info-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": [
    "https://x.com/apify"
  ],
  "usernames": [
    "elonmusk"
  ],
  "maxItems": 20,
  "customMapFunction": "(object) => { return {...object} }"
}' |
apify call xtdata/twitter-x-user-info-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=xtdata/twitter-x-user-info-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Twitter (X.com) User Info Scraper",
        "description": "Extract comprehensive Twitter (X.com) data with our User Info Scraper. Scrape detailed profiles, followers, and following lists by username or numeric ID. Supports batch processing, pagination, and custom mapping. Reliable, high-speed, and requires no login. Perfect for professional lead generation.",
        "version": "0.0",
        "x-build-id": "iJbRBfkgznWGeGig1"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/xtdata~twitter-x-user-info-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-xtdata-twitter-x-user-info-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/xtdata~twitter-x-user-info-scraper/runs": {
            "post": {
                "operationId": "runs-sync-xtdata-twitter-x-user-info-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/xtdata~twitter-x-user-info-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-xtdata-twitter-x-user-info-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",
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "Twitter (X) Profile URLs. Usernames will be extracted automatically.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "usernames": {
                        "title": "Usernames",
                        "type": "array",
                        "description": "Twitter/X usernames (without @) to look up. You can provide usernames, userIds, or both.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "userIds": {
                        "title": "User IDs",
                        "type": "array",
                        "description": "Twitter/X numeric user IDs to look up. You can provide usernames, userIds, or both.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "shouldScrapeUserInfo": {
                        "title": "Scrape User Info",
                        "type": "boolean",
                        "description": "Enable to scrape user profile information.",
                        "default": true
                    },
                    "shouldScrapeFollowers": {
                        "title": "Scrape Followers",
                        "type": "boolean",
                        "description": "Enable to also scrape the followers list for each user.",
                        "default": false
                    },
                    "shouldScrapeFollowings": {
                        "title": "Scrape Followings",
                        "type": "boolean",
                        "description": "Enable to also scrape the following list for each user.",
                        "default": false
                    },
                    "maxItems": {
                        "title": "Max followers/following per user",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of followers or following to retrieve per user. Only used when Scrape Followers or Scrape Followings is enabled."
                    },
                    "customMapFunction": {
                        "title": "Custom map function",
                        "type": "string",
                        "description": "Function that takes each result object as argument and returns transformed data. Not intended for filtering."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
