# LoopNet US $1💰 URL | City Search | Commercial Property Scraper (`abotapi/loopnet-scraper`) Actor

Scrape LoopNet commercial listings across the US including office, retail, industrial, multifamily, land, and hotels. Search by city or URL. Extract 25+ fields such as address, price, size, broker contact, and photos, with optional detail enrichment for cap rate, year built, class, and description.

- **URL**: https://apify.com/abotapi/loopnet-scraper.md
- **Developed by:** [AbotAPI](https://apify.com/abotapi) (community)
- **Categories:** Real estate, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.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.
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

## LoopNet Commercial Properties Scraper

Pull commercial property listings from LoopNet across the United States: offices, retail spaces, industrial sites, multifamily, land, hotels, and more. Search by city slug or paste your own LoopNet URLs. Returns 25+ fields per listing including address, price, size, broker contact, photos, and (with detail fetch enabled) full description, cap rate, year built, and building class. Tuned for fast, low-cost runs.

### Why this scraper

- **Two input modes.** Search by location slug + filters, or paste LoopNet URLs and walk forward.
- **25+ output fields.** ID, URL, title, address, city, state, zip, lat/lng, price, price unit (total, per month, per sqft per year), size in sqft and acres, year built, cap rate, occupancy, broker name, brokerage, broker phone, photo URLs, description.
- **Filter-aware.** Listing type (for sale, for lease, auction), property type (office, retail, industrial, multifamily, land, hotels, restaurants, healthcare, special purpose, sports), min/max price, min/max size, sort by recency or price.
- **Detail-page enrichment.** Toggle on for full descriptions and JSON-LD structured fields; toggle off for fast SERP-only runs.
- **Cost-conscious.** A 100-listing run typically costs the same as a 10-listing run plus a small per-page bandwidth fee.

### Data you get

> Sample shape: values are illustrative placeholders, not from a live listing.

| Field | Example |
|---|---|
| `id` | `"00000001"` |
| `url` | `"https://www.loopnet.com/Listing/00000001/0-Sample-St-Anytown-CA/"` |
| `title` | `"Sample Listing Title"` |
| `listingType` | `"for-lease"` |
| `propertyType` | `"office-space"` |
| `addressRaw` | `"0 Sample St, Anytown, CA 00000"` |
| `street` | `"0 Sample St"` |
| `city` | `"Anytown"` |
| `state` | `"CA"` |
| `zipCode` | `"00000"` |
| `country` | `"US"` |
| `latitude` | `34.0000` |
| `longitude` | `-118.0000` |
| `price` | `0` |
| `priceRaw` | `"$0/SF/YR"` |
| `priceUnit` | `"per_sqft_year"` |
| `currency` | `"USD"` |
| `sizeSqft` | `0` |
| `sizeAcres` | `0.0` |
| `yearBuilt` | `1900` |
| `buildingClass` | `"A"` |
| `capRate` | `0.0` |
| `occupancy` | `"0%"` |
| `brokerName` | `"Agent Name"` |
| `brokerCompany` | `"Sample Brokerage"` |
| `brokerPhone` | `"+10000000000"` |
| `description` | `"Full property description appears here when fetchDetails=true."` |
| `primaryPhoto` | `"https://images1.loopnet.com/i2/000000/0x0/000000000.jpg"` |
| `photos` | `["https://images1.loopnet.com/i2/000000/0x0/000000000.jpg"]` |
| `scrapedAt` | `"2026-01-01T00:00:00.000Z"` |

### How to use

#### 1. Search a single city

```json
{
  "mode": "search",
  "locations": ["los-angeles-ca"],
  "listingType": "for-lease",
  "propertyType": "office-space",
  "maxPages": 5,
  "maxListings": 100,
  "fetchDetails": true,
  "proxy": {
    "useApifyProxy": true,
    "apifyProxyGroups": ["DATACENTER"],
    "apifyProxyCountry": "US"
  }
}
````

#### 2. Search with price and size filters

```json
{
  "mode": "search",
  "locations": ["austin-tx"],
  "listingType": "for-sale",
  "propertyType": "multifamily",
  "minPrice": 1000000,
  "maxPrice": 10000000,
  "minSqft": 5000,
  "sortBy": "most-recent",
  "maxPages": 10,
  "maxListings": 200
}
```

#### 3. Multi-location run

```json
{
  "mode": "search",
  "locations": ["new-york-ny", "chicago-il", "houston-tx", "miami-fl"],
  "listingType": "for-sale",
  "propertyType": "retail-space",
  "maxPages": 3,
  "maxListings": 120
}
```

#### 4. URL pass-through

```json
{
  "mode": "url",
  "urls": [
    "https://www.loopnet.com/search/office-space/los-angeles-ca/for-lease/",
    "https://www.loopnet.com/search/industrial-properties/dallas-tx/for-sale/2/"
  ],
  "maxPages": 5,
  "maxListings": 200,
  "fetchDetails": true
}
```

In URL mode, filter inputs (`listingType`, `propertyType`, `minPrice`, etc.) are ignored. The actor walks forward from the page in each URL (so `/2/` starts at page 2 and continues to `/3/`, `/4/`).

### Input parameters

| Parameter | Type | Default | Description |
|---|---|---|---|
| `mode` | string | `"search"` | `search` or `url`. |
| `locations` | string\[] | `["los-angeles-ca"]` | Search mode. LoopNet location slugs (city + state). Use `usa` for nationwide. |
| `listingType` | string | `"for-sale"` | `for-sale`, `for-lease`, or `auction`. |
| `propertyType` | string | `"all-commercial"` | One of 11 categories. Use `all-commercial` for all. |
| `minPrice` / `maxPrice` | integer | none | Price range in USD. Applies to listings priced as totals. |
| `minSqft` / `maxSqft` | integer | none | Size range in square feet. |
| `sortBy` | string | `"default"` | `default`, `most-recent`, `price-asc`, `price-desc`, `size-asc`, `size-desc`. |
| `urls` | string\[] | (one example) | URL mode. LoopNet SERP URLs to walk. Multi-URL supported. |
| `maxPages` | integer | `5` | Max SERP pages per location/URL. |
| `maxListings` | integer | `0` | Total listing cap across all searches. `0` = unlimited. |
| `fetchDetails` | boolean | `true` | Visit each listing page for description + JSON-LD fields. |
| `proxy` | object | Apify Datacenter US | Datacenter US is the default. Residential US works as a backup if datacenter quotas are exhausted. |

### Output example

> Illustrative shape only: values are placeholders.

```json
{
  "id": "00000001",
  "url": "https://www.loopnet.com/Listing/00000001/0-Sample-St-Anytown-CA/",
  "title": "Sample Listing Title",
  "listingType": "for-lease",
  "propertyType": "office-space",
  "addressRaw": "0 Sample St, Anytown, CA 00000",
  "street": "0 Sample St",
  "city": "Anytown",
  "state": "CA",
  "zipCode": "00000",
  "country": "US",
  "latitude": 34.0000,
  "longitude": -118.0000,
  "price": 0,
  "priceRaw": "$0/SF/YR",
  "priceUnit": "per_sqft_year",
  "currency": "USD",
  "sizeSqft": 0,
  "sizeAcres": null,
  "yearBuilt": 1900,
  "buildingClass": "A",
  "capRate": null,
  "occupancy": null,
  "brokerName": "Agent Name",
  "brokerCompany": "Sample Brokerage",
  "brokerPhone": "+10000000000",
  "description": "Full property description appears here when fetchDetails=true.",
  "primaryPhoto": "https://images1.loopnet.com/i2/000000/0x0/000000000.jpg",
  "photos": [
    "https://images1.loopnet.com/i2/000000/0x0/000000000.jpg"
  ],
  "scrapedAt": "2026-01-01T00:00:00.000Z"
}
```

### Proxy

LoopNet is US-only: requests from non-US IPs are rejected with HTTP 403. Use Apify Datacenter US (the default) for reliable runs. Residential US works as a backup if you've exhausted datacenter quotas. If you supply your own proxy via `proxy.proxyUrls`, point at US exits.

### Memory and cost

- **Memory:** 256 MB default, 1024 MB max.
- **Long runs scale well:** A long run is roughly the same per-page cost as a short one.
- **Detail enrichment:** Doubles request count (one detail page per listing). Set `fetchDetails: false` for SERP-only runs at half the cost.

# Actor input Schema

## `mode` (type: `string`):

search = build URLs from filters below; url = pass through your own LoopNet URLs.

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

Search mode only. Provide LoopNet location slugs (e.g. "los-angeles-ca", "new-york-ny") or use "usa" for nationwide. Multi-location supported.

## `listingType` (type: `string`):

Search mode only. for-sale / for-lease / auction.

## `propertyType` (type: `string`):

Search mode only. Use "commercial-real-estate" for all property types.

## `minPrice` (type: `integer`):

Search mode only. Filter listings priced at or above this value.

## `maxPrice` (type: `integer`):

Search mode only. Filter listings priced at or below this value.

## `minSqft` (type: `integer`):

Search mode only. Filter listings with building/space size at or above this value.

## `maxSqft` (type: `integer`):

Search mode only. Filter listings with building/space size at or below this value.

## `sortBy` (type: `string`):

Search mode only.

## `urls` (type: `array`):

URL mode only. Multi-URL supported. Filter-mode fields are ignored. Pagination starts at the page in the URL and walks forward.

## `maxPages` (type: `integer`):

Maximum SERP pages to walk per location/URL. Each page typically returns up to 30 listings.

## `maxListings` (type: `integer`):

Stop after this many listings across all searches. 0 = unlimited.

## `fetchDetails` (type: `boolean`):

Visit each listing page to extract description, broker contact, photo gallery, and JSON-LD fields. Adds requests; turn off for fast SERP-only runs.

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

Apify Datacenter US is the default and works for most runs. Switch to Residential US if datacenter quotas are exhausted.

## Actor input object example

```json
{
  "mode": "search",
  "locations": [
    "los-angeles-ca"
  ],
  "listingType": "for-sale",
  "propertyType": "all-commercial",
  "sortBy": "default",
  "urls": [
    "https://www.loopnet.com/search/office-space/los-angeles-ca/for-lease/"
  ],
  "maxPages": 5,
  "maxListings": 0,
  "fetchDetails": true,
  "proxy": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `overview` (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 = {
    "locations": [
        "los-angeles-ca"
    ],
    "urls": [
        "https://www.loopnet.com/search/office-space/los-angeles-ca/for-lease/"
    ],
    "proxy": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("abotapi/loopnet-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 = {
    "locations": ["los-angeles-ca"],
    "urls": ["https://www.loopnet.com/search/office-space/los-angeles-ca/for-lease/"],
    "proxy": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("abotapi/loopnet-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 '{
  "locations": [
    "los-angeles-ca"
  ],
  "urls": [
    "https://www.loopnet.com/search/office-space/los-angeles-ca/for-lease/"
  ],
  "proxy": {
    "useApifyProxy": true
  }
}' |
apify call abotapi/loopnet-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "LoopNet US $1💰 URL | City Search | Commercial Property Scraper",
        "description": "Scrape LoopNet commercial listings across the US including office, retail, industrial, multifamily, land, and hotels. Search by city or URL. Extract 25+ fields such as address, price, size, broker contact, and photos, with optional detail enrichment for cap rate, year built, class, and description.",
        "version": "2.0",
        "x-build-id": "AVBNKfeI2aIrbDGRq"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/abotapi~loopnet-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-abotapi-loopnet-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/abotapi~loopnet-scraper/runs": {
            "post": {
                "operationId": "runs-sync-abotapi-loopnet-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/abotapi~loopnet-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-abotapi-loopnet-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": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "search",
                            "url"
                        ],
                        "type": "string",
                        "description": "search = build URLs from filters below; url = pass through your own LoopNet URLs.",
                        "default": "search"
                    },
                    "locations": {
                        "title": "Locations",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Search mode only. Provide LoopNet location slugs (e.g. \"los-angeles-ca\", \"new-york-ny\") or use \"usa\" for nationwide. Multi-location supported.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "listingType": {
                        "title": "Listing Type",
                        "enum": [
                            "for-sale",
                            "for-lease",
                            "auction"
                        ],
                        "type": "string",
                        "description": "Search mode only. for-sale / for-lease / auction.",
                        "default": "for-sale"
                    },
                    "propertyType": {
                        "title": "Property Type",
                        "enum": [
                            "all-commercial",
                            "office-space",
                            "retail-space",
                            "industrial-properties",
                            "multifamily",
                            "land",
                            "hotels",
                            "restaurants",
                            "healthcare-properties",
                            "special-purpose",
                            "sports-and-entertainment"
                        ],
                        "type": "string",
                        "description": "Search mode only. Use \"commercial-real-estate\" for all property types.",
                        "default": "all-commercial"
                    },
                    "minPrice": {
                        "title": "Minimum Price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Search mode only. Filter listings priced at or above this value."
                    },
                    "maxPrice": {
                        "title": "Maximum Price (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Search mode only. Filter listings priced at or below this value."
                    },
                    "minSqft": {
                        "title": "Minimum Size (Sq Ft)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Search mode only. Filter listings with building/space size at or above this value."
                    },
                    "maxSqft": {
                        "title": "Maximum Size (Sq Ft)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Search mode only. Filter listings with building/space size at or below this value."
                    },
                    "sortBy": {
                        "title": "Sort By",
                        "enum": [
                            "default",
                            "most-recent",
                            "price-asc",
                            "price-desc",
                            "size-asc",
                            "size-desc"
                        ],
                        "type": "string",
                        "description": "Search mode only.",
                        "default": "default"
                    },
                    "urls": {
                        "title": "LoopNet URLs",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "URL mode only. Multi-URL supported. Filter-mode fields are ignored. Pagination starts at the page in the URL and walks forward.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxPages": {
                        "title": "Max Pages per Search",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum SERP pages to walk per location/URL. Each page typically returns up to 30 listings.",
                        "default": 5
                    },
                    "maxListings": {
                        "title": "Max Listings (total)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Stop after this many listings across all searches. 0 = unlimited.",
                        "default": 0
                    },
                    "fetchDetails": {
                        "title": "Fetch Detail Pages",
                        "type": "boolean",
                        "description": "Visit each listing page to extract description, broker contact, photo gallery, and JSON-LD fields. Adds requests; turn off for fast SERP-only runs.",
                        "default": true
                    },
                    "proxy": {
                        "title": "Proxy",
                        "type": "object",
                        "description": "Apify Datacenter US is the default and works for most runs. Switch to Residential US if datacenter quotas are exhausted.",
                        "default": {
                            "useApifyProxy": true
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
