# Instagram Lead Extractor (`mukeshrana90/instagram-lead-extractor`) Actor

Discover Instagram profiles from usernames, hashtags, locations, search queries, datasets, or CSV — and extract emails, phones, and social handles from their bios.

- **URL**: https://apify.com/mukeshrana90/instagram-lead-extractor.md
- **Developed by:** [Mukesh Kumar](https://apify.com/mukeshrana90) (community)
- **Categories:** Social media, Lead generation
- **Stats:** 10 total users, 8 monthly users, 65.2% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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

## Instagram Bio & Email Extractor

An Apify actor that discovers Instagram profiles from multiple sources and extracts contact info — especially **emails** — from their bios.

### What it does

- **Discovers** Instagram profiles from any combination of: direct usernames/URLs, hashtags, locations, search queries, an upstream Apify dataset, or a CSV / Google Sheets URL.
- **Fetches** each profile via Instagram's `web_profile_info` JSON endpoint (the cheapest and most stable public path).
- **Extracts** username, full name, bio, follower/following/post counts, external URL, business category, verification status, and `is_private`.
- **Parses** the bio (and optionally the link-in-bio page) for **emails**, **phone numbers** (E.164), and social handles for TikTok, YouTube, X, LinkedIn, WhatsApp, Telegram, Threads, Facebook, and Pinterest.
- Emits one row per profile into the default Apify dataset.

### What it does NOT do

- Does not scrape private profiles' posts, stories, DMs, or follower lists.
- Does not log in by default. A session cookie is **opt-in** and required for auth-only modes (see below).
- Does not bypass Instagram's auth walls for protected content.

### Discovery modes

| Mode | Input field | Requires session cookie | Notes |
|---|---|---|---|
| Direct usernames | `usernames` | No | Most reliable. Accepts `@handle`, `username`, or full profile URL. |
| Upstream Apify dataset | `datasetId` + `datasetUsernameField` | No | Chain from another actor. |
| CSV / Google Sheets | `csvUrl` + `csvUsernameColumn` | No | Public CSV URL or `docs.google.com/spreadsheets/...` (auto-converts to `export?format=csv`). |
| Search | `searchQueries` | No | Top accounts per query. Volume small. |
| Hashtags | `hashtags` | No | Discovers post authors. Cap with `maxProfilesPerHashtag`. |
| Locations | `locations` | No | Full IG location URL. Cap with `maxProfilesPerLocation`. |
| Followers of target | `followersOf` | **Yes** | Auth-only — IG does not serve follower lists unauthenticated. **Not implemented in v1.** |
| Following of target | `followingOf` | **Yes** | Same as above. **Not implemented in v1.** |
| Post engagers | `postUrls` | Mixed (likers auth-only) | **Not implemented in v1.** |

Discovery modes can be combined freely — results are merged and **deduplicated by username** (first-seen wins for `discoveredVia` / `sourceRef`).

### Output

One row per profile. Always emitted with the full shape — empty arrays or `null`s for missing fields.

```json
{
  "username": "natgeo",
  "fullName": "National Geographic",
  "profileUrl": "https://www.instagram.com/natgeo/",
  "biography": "Experience the world...",
  "externalUrl": "https://natgeo.com",
  "isVerified": true,
  "isPrivate": false,
  "isBusinessAccount": true,
  "businessCategory": "Media",
  "followersCount": 281000000,
  "followingCount": 132,
  "postsCount": 28500,
  "profilePicUrl": "https://...",
  "emails": ["press@natgeo.com"],
  "phones": ["+12025550100"],
  "socialHandles": {
    "tiktok": ["natgeo"], "youtube": ["natgeo"], "x": [],
    "linkedin": [], "whatsapp": [], "telegram": [],
    "threads": [], "facebook": [], "pinterest": []
  },
  "scrapedAt": "2026-05-23T12:34:56.000Z",
  "discoveredVia": "hashtag",
  "sourceRef": "veganbakeryberlin",
  "contactSource": "profile_page",
  "status": "ok"
}
````

`status` is one of `ok | private | not_found | deactivated | rate_limited | error`.

### Email extraction

The actor handles common bio obfuscations before matching:

- `name [at] domain [dot] com` → `name@domain.com`
- `name (at) domain (dot) com` → `name@domain.com`
- `name AT domain DOT com` → `name@domain.com`
- `name@@domain` → `name@domain`

Matched emails are then filtered to drop:

- Image / asset extensions (`.png`, `.jpg`, `.webp`, …)
- Known tracking domains (`sentry.io`, `wixpress.com`, `example.com`, …)
- `noreply@` / `no-reply@` / `donotreply@`
- Purely numeric local-parts longer than 8 characters (tracking IDs)

Phone numbers are parsed via `libphonenumber-js` and output in E.164.

### External URL scanning

When `scrapeExternalUrl: true`, the actor follows the profile's `external_url` and scans the response body for additional contacts. This is SSRF-guarded:

- Rejects private / loopback / link-local IPs (post-DNS).
- Rejects non-`http(s)` schemes.
- Caps response size at 2 MB.
- 10s total timeout.
- At most 3 redirects, re-validated per hop.

### Anti-detection

- **Residential proxy required** for production scale. Datacenter IPs get challenged within a few requests.
- **Session pool with rotation** — sessions are retired after rate-limit / login-wall responses.
- **Randomised delays** between profiles (`minDelayMs` / `maxDelayMs`, default 1500–4500 ms).
- **Login wall detection** by both URL (`/accounts/login/`) and body markers (`LoginAndSignupPage`, etc.).
- **Cheerio-based crawler** by default — no headless browser, much cheaper.

### Local development

```bash
npm install

## place a test input
mkdir -p storage/key_value_stores/default
echo '{"usernames":["natgeo"],"maxProfiles":1}' > storage/key_value_stores/default/INPUT.json

## run
npm start

## test
npm test
```

Local runs use no proxy by default and will hit IG's login wall after a few requests. That's expected — local is for logic, scale-test on the Apify platform with a residential proxy.

### Legal & ethical

- This actor scrapes only **public** profiles. Private profiles return only basic metadata (no bio).
- Profile pictures are stored as **URLs only** — no binaries.
- You are responsible for compliance with GDPR, CCPA, CAN-SPAM, and local data-protection laws when using extracted contact info for outreach.
- Do not use this actor for harassment, stalking, or targeted abuse.

# Actor input Schema

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

Direct list of Instagram usernames or profile URLs. Most reliable source.

## `hashtags` (type: `array`):

Hashtag names (without #). Discovers profiles from recent posts under each tag.

## `locations` (type: `array`):

Full Instagram location URLs, e.g. https://www.instagram.com/explore/locations/213385402/brooklyn-bridge/

## `followersOf` (type: `array`):

Scrape followers of these target accounts. Requires sessionCookies — Instagram does not serve follower lists to unauthenticated requests.

## `followingOf` (type: `array`):

Scrape who these accounts follow. Requires sessionCookies.

## `postUrls` (type: `array`):

Scrape commenters on these public posts. Likers require sessionCookies.

## `searchQueries` (type: `array`):

Free-text queries; returns top matching accounts. Volume is small per query.

## `datasetId` (type: `string`):

Read usernames from another actor's output dataset.

## `datasetUsernameField` (type: `string`):

Field name in the upstream dataset that holds the username.

## `csvUrl` (type: `string`):

Public CSV URL, or Google Sheets export URL (?format=csv).

## `csvUsernameColumn` (type: `string`):

Column header that holds the username.

## `maxProfiles` (type: `integer`):

Hard cap on total profiles scraped after deduplication.

## `maxProfilesPerHashtag` (type: `integer`):

Hard cap on profiles discovered per hashtag before moving to the next.

## `maxProfilesPerLocation` (type: `integer`):

Hard cap on profiles discovered per location URL.

## `maxFollowersPerTarget` (type: `integer`):

Hard cap on followers scraped per target account (auth-only mode).

## `maxEngagersPerPost` (type: `integer`):

Hard cap on commenters/likers scraped per post URL.

## `scrapeExternalUrl` (type: `boolean`):

Fetch the profile's external URL and scan its HTML for contacts. SSRF-guarded (rejects private IPs, capped size/timeout).

## `includeRelatedProfiles` (type: `boolean`):

Also enqueue Instagram's suggested 'related profiles' for each scraped account.

## `proxy` (type: `object`):

Residential proxy required for production scale. Datacenter IPs are challenged quickly.

## `sessionCookies` (type: `string`):

Optional Instagram session cookie string. Required for followersOf, followingOf, and likers. Treated as sensitive — never logged.

## `minDelayMs` (type: `integer`):

Lower bound of the randomised delay between profile fetches.

## `maxDelayMs` (type: `integer`):

Upper bound of the randomised delay between profile fetches. Must be >= minDelayMs.

## Actor input object example

```json
{
  "usernames": [
    "natgeo"
  ],
  "datasetUsernameField": "username",
  "csvUsernameColumn": "username",
  "maxProfiles": 1000,
  "maxProfilesPerHashtag": 500,
  "maxProfilesPerLocation": 500,
  "maxFollowersPerTarget": 5000,
  "maxEngagersPerPost": 500,
  "scrapeExternalUrl": false,
  "includeRelatedProfiles": false,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "minDelayMs": 1500,
  "maxDelayMs": 4500
}
```

# Actor output Schema

## `leads` (type: `string`):

All scraped profiles, one row per username. Includes emails, phones, social handles, follower counts, and discovery provenance (discoveredVia / sourceRef).

# 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 = {
    "usernames": [
        "natgeo"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("mukeshrana90/instagram-lead-extractor").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 = { "usernames": ["natgeo"] }

# Run the Actor and wait for it to finish
run = client.actor("mukeshrana90/instagram-lead-extractor").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 '{
  "usernames": [
    "natgeo"
  ]
}' |
apify call mukeshrana90/instagram-lead-extractor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=mukeshrana90/instagram-lead-extractor",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Instagram Lead Extractor",
        "description": "Discover Instagram profiles from usernames, hashtags, locations, search queries, datasets, or CSV — and extract emails, phones, and social handles from their bios.",
        "version": "0.1",
        "x-build-id": "reyAf2PuzyTJhMtAM"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/mukeshrana90~instagram-lead-extractor/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-mukeshrana90-instagram-lead-extractor",
                "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/mukeshrana90~instagram-lead-extractor/runs": {
            "post": {
                "operationId": "runs-sync-mukeshrana90-instagram-lead-extractor",
                "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/mukeshrana90~instagram-lead-extractor/run-sync": {
            "post": {
                "operationId": "run-sync-mukeshrana90-instagram-lead-extractor",
                "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": {
                    "usernames": {
                        "title": "Usernames or profile URLs",
                        "type": "array",
                        "description": "Direct list of Instagram usernames or profile URLs. Most reliable source.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "hashtags": {
                        "title": "Hashtags",
                        "type": "array",
                        "description": "Hashtag names (without #). Discovers profiles from recent posts under each tag.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "locations": {
                        "title": "Location URLs",
                        "type": "array",
                        "description": "Full Instagram location URLs, e.g. https://www.instagram.com/explore/locations/213385402/brooklyn-bridge/",
                        "items": {
                            "type": "string"
                        }
                    },
                    "followersOf": {
                        "title": "Followers of (requires session cookies)",
                        "type": "array",
                        "description": "Scrape followers of these target accounts. Requires sessionCookies — Instagram does not serve follower lists to unauthenticated requests.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "followingOf": {
                        "title": "Following of (requires session cookies)",
                        "type": "array",
                        "description": "Scrape who these accounts follow. Requires sessionCookies.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "postUrls": {
                        "title": "Post URLs (engagers)",
                        "type": "array",
                        "description": "Scrape commenters on these public posts. Likers require sessionCookies.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "searchQueries": {
                        "title": "Search queries",
                        "type": "array",
                        "description": "Free-text queries; returns top matching accounts. Volume is small per query.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "datasetId": {
                        "title": "Upstream Apify dataset ID",
                        "type": "string",
                        "description": "Read usernames from another actor's output dataset."
                    },
                    "datasetUsernameField": {
                        "title": "Dataset username field",
                        "type": "string",
                        "description": "Field name in the upstream dataset that holds the username.",
                        "default": "username"
                    },
                    "csvUrl": {
                        "title": "CSV or Google Sheets URL",
                        "type": "string",
                        "description": "Public CSV URL, or Google Sheets export URL (?format=csv)."
                    },
                    "csvUsernameColumn": {
                        "title": "CSV username column",
                        "type": "string",
                        "description": "Column header that holds the username.",
                        "default": "username"
                    },
                    "maxProfiles": {
                        "title": "Max profiles (global cap)",
                        "minimum": 1,
                        "maximum": 100000,
                        "type": "integer",
                        "description": "Hard cap on total profiles scraped after deduplication.",
                        "default": 1000
                    },
                    "maxProfilesPerHashtag": {
                        "title": "Max profiles per hashtag",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Hard cap on profiles discovered per hashtag before moving to the next.",
                        "default": 500
                    },
                    "maxProfilesPerLocation": {
                        "title": "Max profiles per location",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Hard cap on profiles discovered per location URL.",
                        "default": 500
                    },
                    "maxFollowersPerTarget": {
                        "title": "Max followers per target",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Hard cap on followers scraped per target account (auth-only mode).",
                        "default": 5000
                    },
                    "maxEngagersPerPost": {
                        "title": "Max engagers per post",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Hard cap on commenters/likers scraped per post URL.",
                        "default": 500
                    },
                    "scrapeExternalUrl": {
                        "title": "Follow link-in-bio and scan for emails",
                        "type": "boolean",
                        "description": "Fetch the profile's external URL and scan its HTML for contacts. SSRF-guarded (rejects private IPs, capped size/timeout).",
                        "default": false
                    },
                    "includeRelatedProfiles": {
                        "title": "Include related profiles",
                        "type": "boolean",
                        "description": "Also enqueue Instagram's suggested 'related profiles' for each scraped account.",
                        "default": false
                    },
                    "proxy": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Residential proxy required for production scale. Datacenter IPs are challenged quickly.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    },
                    "sessionCookies": {
                        "title": "Session cookies",
                        "type": "string",
                        "description": "Optional Instagram session cookie string. Required for followersOf, followingOf, and likers. Treated as sensitive — never logged."
                    },
                    "minDelayMs": {
                        "title": "Min delay between requests (ms)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Lower bound of the randomised delay between profile fetches.",
                        "default": 1500
                    },
                    "maxDelayMs": {
                        "title": "Max delay between requests (ms)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Upper bound of the randomised delay between profile fetches. Must be >= minDelayMs.",
                        "default": 4500
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
