# URL to Markdown — Clean Web Reader for AI Agents (`logiover/url-to-markdown`) Actor

Turn any URL into clean, LLM-ready Markdown in one call. Keyless Firecrawl / Jina Reader alternative: strips nav, ads and boilerplate, returns article Markdown + metadata. No API key, no browser.

- **URL**: https://apify.com/logiover/url-to-markdown.md
- **Developed by:** [Logiover](https://apify.com/logiover) (community)
- **Categories:** MCP servers, Agents, AI
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.50 / 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

## URL to Markdown — Clean Web Reader for AI Agents & RAG (No API Key)

![URL to Markdown — Clean Web Reader for AI Agents](https://img.shields.io/badge/Apify-Actor-00A67E?logo=apify&logoColor=white) ![No API key](https://img.shields.io/badge/No%20API%20key-required-2ea44f) ![Pay per event](https://img.shields.io/badge/Pricing-Pay%20per%20result-1C7ED6) ![Category](https://img.shields.io/badge/Category-AI%20%7C%20Dev%20Tools-8B5CF6) ![Export](https://img.shields.io/badge/Export-JSON%20%7C%20CSV%20%7C%20Excel-F59E0B)

**Turn any URL into clean, LLM-ready Markdown in a single call.** URL to Markdown is a fast, **keyless Firecrawl and Jina Reader alternative**: give it a web page, it fetches the HTML, strips away navigation, headers, footers, sidebars, ads and cookie banners, and returns the article as tidy **Markdown** plus structured metadata. **No API key, no headless browser, no setup** — point it at a URL and get back content your LLM can actually read. Built for **AI agents, RAG pipelines and MCP workflows**, it's the missing "read this page for me" tool.

> ### 🏆 Why this URL → Markdown reader?
> **Clean article Markdown, not raw HTML** · rich metadata (title, author, date, word count, reading time) · single or **batch up to 500 URLs** · keyless & cheap (plain HTTP) · MCP / pay-per-event ready · export to JSON / CSV / Excel. The unofficial **Firecrawl / Jina Reader API alternative** for LLM ingestion, agents and knowledge bases.

---

### ✨ What this Actor does / Key features

- 🧹 **Clean output, not raw HTML** — boilerplate removal isolates the main article so your model sees content, not chrome.
- 🔑 **Keyless & cheap** — no third-party API key; runs on plain HTTP with Apify's datacenter proxy, so it stays fast and inexpensive.
- 📝 **LLM-ready Markdown** — headings, lists, tables, code blocks, links and images convert to correct Markdown, perfect for embeddings and RAG.
- 🏷️ **Rich metadata** — title, description, author, published date, site name, language, canonical URL, word count and reading time per page.
- 📦 **Batch or single** — convert one URL or up to 500 in a single run with configurable concurrency.
- 🎛️ **Token control** — toggle links/images and cap max characters per page to control LLM token cost.
- 🤖 **Agent-native (MCP)** — pay-per-event pricing means an AI agent can call it, pay per page, and move on.
- 🌍 **Any language** — detects page language and converts content regardless of language.

### 🚀 Quick start (3 steps)

1. **Configure** — paste one or more URLs into **URLs** (or a single URL into **Single URL**). Keep **Only main content** on to strip menus and ads.
2. **Run** — click **Start**. Each page is fetched, cleaned and converted; records stream into your dataset.
3. **Get your data** — open the **Output** tab and export to **JSON, CSV, Excel, HTML or RSS**, or read the Markdown live via the Apify API.

### 📥 Input

Give the Actor at least one URL (batch list or single field). Everything else is optional.

#### Example — convert a batch of pages for RAG ingestion
```json
{
  "urls": [
    "https://en.wikipedia.org/wiki/Model_Context_Protocol",
    "https://en.wikipedia.org/wiki/Large_language_model"
  ],
  "onlyMainContent": true,
  "includeLinks": true,
  "includeImages": false,
  "concurrency": 5
}
````

#### Example — single URL, token-capped for an agent

```json
{
  "url": "https://news.ycombinator.com",
  "onlyMainContent": true,
  "maxCharacters": 8000
}
```

#### Example — bot-walled site via residential proxy

```json
{
  "urls": ["https://example.com/protected-article"],
  "onlyMainContent": true,
  "proxyGroups": ["RESIDENTIAL"]
}
```

| Field | Type | Description | Default |
|-------|------|-------------|---------|
| `urls` | array | Page URLs to convert (batch up to 500). | – |
| `url` | string | A single page URL (use this or the list above). | – |
| `onlyMainContent` | boolean | Strip nav/header/footer/sidebars/ads/cookie banners — keep just the article. | `true` |
| `includeLinks` | boolean | Keep hyperlinks in the Markdown as `[text](url)`. | `true` |
| `includeImages` | boolean | Keep images in the Markdown as `![alt](url)`. | `true` |
| `maxCharacters` | integer | Cap Markdown length per page (0 = no cap). Controls token cost. | `0` |
| `concurrency` | integer | How many URLs to fetch in parallel (1–20). | `5` |
| `useApifyProxy` | boolean | Route through Apify datacenter proxy (AUTO). | `true` |
| `proxyGroups` | array | Override proxy group, e.g. `RESIDENTIAL` for bot-walled sites. | `[]` |

> **Tip:** it reads server-rendered HTML over plain HTTP — fast and cheap, and covers the vast majority of articles, docs and blogs. For heavy JavaScript apps, use a browser-based scraper. Switch to a RESIDENTIAL proxy group only for bot-walled sites.

### 📤 Output

One structured record per URL — feed the `markdown` field straight to an LLM. Here is a trimmed sample:

```json
{
  "url": "https://en.wikipedia.org/wiki/Model_Context_Protocol",
  "finalUrl": "https://en.wikipedia.org/wiki/Model_Context_Protocol",
  "statusCode": 200,
  "title": "Model Context Protocol",
  "description": "An open standard for connecting AI assistants to tools and data.",
  "author": null,
  "publishedDate": null,
  "siteName": "Wikipedia",
  "lang": "en",
  "canonicalUrl": "https://en.wikipedia.org/wiki/Model_Context_Protocol",
  "markdown": "# Model Context Protocol\n\nThe **Model Context Protocol (MCP)** is an open standard...",
  "wordCount": 1240,
  "readingTimeMin": 6,
  "links": [{ "text": "Anthropic", "url": "https://www.anthropic.com" }],
  "images": []
}
```

<details>
<summary><b>📋 Full field reference (click to expand)</b></summary>

| Field | Description |
|-------|-------------|
| `markdown` | The clean, LLM-ready Markdown of the page |
| `title` / `description` | Page title and meta description |
| `author` / `publishedDate` | Byline and publish time when available |
| `siteName` / `lang` / `canonicalUrl` | Source metadata |
| `wordCount` / `readingTimeMin` | Length and estimated reading time |
| `links` / `images` | In-content links and images as structured lists |
| `statusCode` / `finalUrl` | HTTP status and final URL after redirects |

</details>

### 💡 Use cases

- **RAG ingestion** — convert documentation, blogs and news into Markdown before chunking and embedding.
- **AI agents** — give an agent a "read this URL" tool it can call mid-conversation and pay per page.
- **Research & summarization** — feed clean article text to an LLM for summaries or Q\&A.
- **Content monitoring** — snapshot pages as Markdown for diffing and change detection.
- **Knowledge bases** — bulk-convert a list of URLs into a tidy Markdown corpus.

### 👥 Who uses it

AI engineers building RAG pipelines · agent and MCP developers · data teams assembling knowledge bases · researchers and analysts summarizing web content · anyone tired of feeding noisy HTML into an LLM.

### 🤖 Use it as an MCP tool

This Actor uses Apify's **pay-per-event** model, so AI agents can discover and call it autonomously through the Apify MCP server — one charge per converted URL. Connect it in Claude, Cursor or any MCP client and let the agent turn URLs into Markdown on demand.

### 💰 Pricing

This Actor runs on a simple **pay-per-result** model — you're charged once per converted URL, with no separate Apify platform fees to calculate and no idle cost. Try it on the **free tier** first, then scale up. See the **Pricing** tab on this page for the current rate.

### ❓ Frequently Asked Questions

**Is this a Firecrawl or Jina Reader alternative?**
Yes. It covers the core "URL → clean Markdown" job those tools are used for, without requiring their API keys. You run it on Apify and pay per converted page.

**Do I need an API key?**
No. It's fully keyless and works out of the box using Apify's datacenter proxy. Switch to a RESIDENTIAL proxy only for bot-walled sites.

**Can I convert URLs to Markdown without an API or login?**
Yes. No third-party API key or account is required — only an Apify account. It reads publicly reachable pages over plain HTTP.

**Does it render JavaScript?**
No — it reads server-rendered HTML over plain HTTP, which keeps it fast and cheap and covers the vast majority of articles, docs and blogs. For heavy JavaScript apps, use a browser-based scraper.

**How is it priced?**
Pay-per-event: you're charged once per converted URL. No monthly fee, no idle cost.

**Can it handle non-English pages?**
Yes. It detects the page language and converts content regardless of language.

**How much can I convert at once?**
Batch up to 500 URLs per run, with configurable concurrency. Run it on a schedule or call it repeatedly for larger corpora.

**How do I export the Markdown to CSV or JSON?**
Run the Actor, then export the dataset as JSON, CSV, Excel, HTML or RSS from the run — or read it live via the Apify API endpoint.

### 🔗 More web, content & AI tools by logiover

Building a content-ingestion or web-recon pipeline? Pair URL to Markdown with these:

| Actor | What it does |
|---|---|
| [Website Text & Markdown Crawler](https://apify.com/logiover/website-text-markdown-crawler) | Crawl a whole site to Markdown/text |
| [Sitemap to URL Crawler](https://apify.com/logiover/sitemap-to-url-crawler) | Expand sitemaps into URL lists to feed this |
| [Website Contact Scraper](https://apify.com/logiover/website-contact-scraper) | Emails, phones & socials from pages |
| [JSON-LD Schema & Meta Tag Extractor](https://apify.com/logiover/json-ld-schema-meta-tag-extractor) | Structured data & metadata from pages |
| [Bulk URL Status Checker](https://apify.com/logiover/bulk-url-status-checker) | HTTP status & response times at scale |
| [Wayback Machine URL Extractor](https://apify.com/logiover/wayback-machine-url-extractor) | Historical URLs from the Internet Archive |
| [AI Web Extract](https://apify.com/logiover/ai-web-extract) | Structured extraction from any page |
| [AI Deep Research](https://apify.com/logiover/ai-deep-research) | Multi-source research agent |
| [Docs Knowledge Base Scraper](https://apify.com/logiover/docs-knowledge-base-scraper) | Ingest documentation sites for RAG |
| [Google News Scraper](https://apify.com/logiover/google-news-scraper) | News articles by keyword to convert |

👉 Browse all **[logiover scrapers on Apify Store](https://apify.com/logiover)** — 180+ actors across real estate, jobs, crypto, social media & B2B data.

### ⏰ Scheduling & integration

Schedule this Actor on Apify to refresh a Markdown corpus daily or weekly. Export results to JSON, CSV or Excel, sync to Google Sheets, or push to your vector DB, database and webhooks through the Apify API. Connect it to **Make, n8n or Zapier**, or call it as an MCP tool inside your AI agent.

### ⭐ Support & feedback

Found a bug or need an extra field? Open an issue on the **Issues** tab — response is usually fast. If this Actor saves you time, a **★★★★★ review** on the Store page genuinely helps and is hugely appreciated. 🙏

### ⚖️ Legal

This Actor converts only publicly reachable pages and is intended for legitimate research, ingestion and analytics use. You are responsible for complying with the terms of service of the sites you convert and any applicable local laws.

***

### 📝 Changelog

#### 2026-07-06

- ✨ README overhaul: richer output sample, three ready-to-run example scenarios, expanded web/AI tool cross-links, and clearer quick-start.

#### Initial release

- Keyless URL → clean Markdown conversion with boilerplate removal, rich metadata, batch support and pay-per-event pricing for AI agents and RAG.

# Actor input Schema

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

One or more page URLs to convert to Markdown, e.g. `https://en.wikipedia.org/wiki/Large_language_model`. Batch up to 500. For a single URL you can also use the field below.

## `url` (type: `string`):

A single page URL. Use this or the URLs list above.

## `onlyMainContent` (type: `boolean`):

Strip navigation, header, footer, sidebars, ads and cookie banners — keep just the article/body. Turn off to convert the whole page.

## `includeLinks` (type: `boolean`):

Keep hyperlinks in the Markdown as [text](url). Turn off for plain reading text.

## `includeImages` (type: `boolean`):

Keep images in the Markdown as ![alt](url).

## `maxCharacters` (type: `integer`):

Cap the Markdown length per page (0 = no cap). Handy to control LLM token cost.

## `concurrency` (type: `integer`):

How many URLs to fetch in parallel. Lower for fragile sites.

## `useApifyProxy` (type: `boolean`):

Route requests through Apify datacenter proxy (AUTO). Recommended — avoids per-IP rate limits. Turn off only for sites that geo-block proxies.

## `proxyGroups` (type: `array`):

Override proxy group, e.g. `RESIDENTIAL` for bot-walled sites. Leave empty for datacenter (AUTO).

## Actor input object example

```json
{
  "urls": [
    "https://en.wikipedia.org/wiki/Model_Context_Protocol"
  ],
  "url": "https://news.ycombinator.com",
  "onlyMainContent": true,
  "includeLinks": true,
  "includeImages": true,
  "maxCharacters": 0,
  "concurrency": 5,
  "useApifyProxy": true,
  "proxyGroups": []
}
```

# Actor output Schema

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

Full dataset of converted pages. One row = one URL.

# 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 = {
    "urls": [
        "https://en.wikipedia.org/wiki/Model_Context_Protocol"
    ],
    "onlyMainContent": true,
    "includeLinks": true,
    "includeImages": true,
    "maxCharacters": 0,
    "concurrency": 5,
    "useApifyProxy": true
};

// Run the Actor and wait for it to finish
const run = await client.actor("logiover/url-to-markdown").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 = {
    "urls": ["https://en.wikipedia.org/wiki/Model_Context_Protocol"],
    "onlyMainContent": True,
    "includeLinks": True,
    "includeImages": True,
    "maxCharacters": 0,
    "concurrency": 5,
    "useApifyProxy": True,
}

# Run the Actor and wait for it to finish
run = client.actor("logiover/url-to-markdown").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 '{
  "urls": [
    "https://en.wikipedia.org/wiki/Model_Context_Protocol"
  ],
  "onlyMainContent": true,
  "includeLinks": true,
  "includeImages": true,
  "maxCharacters": 0,
  "concurrency": 5,
  "useApifyProxy": true
}' |
apify call logiover/url-to-markdown --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "URL to Markdown — Clean Web Reader for AI Agents",
        "description": "Turn any URL into clean, LLM-ready Markdown in one call. Keyless Firecrawl / Jina Reader alternative: strips nav, ads and boilerplate, returns article Markdown + metadata. No API key, no browser.",
        "version": "1.0",
        "x-build-id": "gJWW4L05oHYYmOfRo"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/logiover~url-to-markdown/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-logiover-url-to-markdown",
                "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/logiover~url-to-markdown/runs": {
            "post": {
                "operationId": "runs-sync-logiover-url-to-markdown",
                "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/logiover~url-to-markdown/run-sync": {
            "post": {
                "operationId": "run-sync-logiover-url-to-markdown",
                "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": {
                    "urls": {
                        "title": "URLs",
                        "type": "array",
                        "description": "One or more page URLs to convert to Markdown, e.g. `https://en.wikipedia.org/wiki/Large_language_model`. Batch up to 500. For a single URL you can also use the field below.",
                        "items": {
                            "type": "string"
                        },
                        "default": []
                    },
                    "url": {
                        "title": "Single URL",
                        "type": "string",
                        "description": "A single page URL. Use this or the URLs list above."
                    },
                    "onlyMainContent": {
                        "title": "Only main content",
                        "type": "boolean",
                        "description": "Strip navigation, header, footer, sidebars, ads and cookie banners — keep just the article/body. Turn off to convert the whole page.",
                        "default": true
                    },
                    "includeLinks": {
                        "title": "Include links",
                        "type": "boolean",
                        "description": "Keep hyperlinks in the Markdown as [text](url). Turn off for plain reading text.",
                        "default": true
                    },
                    "includeImages": {
                        "title": "Include images",
                        "type": "boolean",
                        "description": "Keep images in the Markdown as ![alt](url).",
                        "default": true
                    },
                    "maxCharacters": {
                        "title": "Max characters per page",
                        "minimum": 0,
                        "maximum": 500000,
                        "type": "integer",
                        "description": "Cap the Markdown length per page (0 = no cap). Handy to control LLM token cost.",
                        "default": 0
                    },
                    "concurrency": {
                        "title": "Concurrency",
                        "minimum": 1,
                        "maximum": 20,
                        "type": "integer",
                        "description": "How many URLs to fetch in parallel. Lower for fragile sites.",
                        "default": 5
                    },
                    "useApifyProxy": {
                        "title": "Use Apify datacenter proxy",
                        "type": "boolean",
                        "description": "Route requests through Apify datacenter proxy (AUTO). Recommended — avoids per-IP rate limits. Turn off only for sites that geo-block proxies.",
                        "default": true
                    },
                    "proxyGroups": {
                        "title": "Proxy groups (advanced)",
                        "type": "array",
                        "description": "Override proxy group, e.g. `RESIDENTIAL` for bot-walled sites. Leave empty for datacenter (AUTO).",
                        "items": {
                            "type": "string"
                        },
                        "default": []
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
