# AutomationDirect US Product Search & Document Links (`dromb/automationdirect-us-product-search-documents`) Actor

Extract AutomationDirect US products, exact item details, technical attributes, pricing, availability, and official PDF/manual/CAD links.

- **URL**: https://apify.com/dromb/automationdirect-us-product-search-documents.md
- **Developed by:** [Dmitriy Gyrbu](https://apify.com/dromb) (community)
- **Categories:** Automation, Developer tools, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.40 / 1,000 results

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

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## AutomationDirect US Product & Document Scraper

Extract AutomationDirect US products, exact item details, prices, availability, technical attributes, and official PDF, manual, drawing, CAD, and download links. Use the data for industrial sourcing, catalog enrichment, engineering research, procurement workflows, and price or lifecycle monitoring.

This is an unofficial Actor and is not affiliated with, endorsed by, or operated by AutomationDirect.

### What you can do

- Search by part number, product family, or component type.
- Look up one exact AutomationDirect item ID.
- Look up as many as 50 item IDs in one bounded batch.
- Collect official specification, manual, drawing, CAD, and download links.
- Optionally enrich search results with availability, shipping, weight, lifecycle, and official item data.

The Actor is browser-free. Its verified default uses a direct connection, keeping runs fast and inexpensive.

### Quick start

Search for products:

```json
{
  "mode": "search",
  "query": "power supply",
  "maxItems": 10
}
````

Look up an exact item:

```json
{
  "mode": "item",
  "itemId": "C2-03CPU"
}
```

Look up a batch:

```json
{
  "mode": "batch_items",
  "itemIds": ["C2-03CPU", "D2-16ND3-2", "P1-01DC"]
}
```

Get document links:

```json
{
  "mode": "document_links",
  "itemId": "C2-03CPU",
  "includeTypes": ["spec", "manual", "cad", "drawing"]
}
```

### Input modes

#### `search`

Requires `query`. It returns ranked product records and places an exact part-number match first.

Useful options:

- `maxItems`: 1–200 results.
- `includeDocumentLinks`: include or suppress official links.
- `includeTypes`: filter links to `spec`, `manual`, `cad`, `drawing`, or `download`.
- `enrichItems`: request official item enrichment.
- `enrichLimit`: enrich at most 20 final search records.

Enrichment is bounded and runs only after ranking and result limiting.

#### `item`

Requires `itemId`. Returns one normalized item or one structured error record when the item does not exist or the upstream endpoint fails.

#### `batch_items`

Requires `itemIds`. Accepts at most 50 raw IDs, removes duplicates, and continues after individual item errors.

#### `document_links`

Requires `itemId`. Uses an exact product search and returns link metadata. It does not download or parse linked files.

### Output

Dataset records have `recordType` equal to `product` or `error`. Product fields can include:

- `itemId`, `name`, `brand`, and description
- `price`, currency, availability, orderability, and lifecycle status
- category, product URL, and image URL
- shipping, lead time, and weight
- technical attributes
- official document links
- exact-match and source provenance

Unavailable values remain `null`; the Actor does not invent currency, inventory, or technical data.

The `OUTPUT` key-value-store record contains the run status, product and error counts, request count, errors, and the effective proxy layer.

### Saved-task use cases

The release includes examples suitable for recurring tasks:

- PLC and controller product lookup
- Industrial power-supply search
- Exact item specification and availability lookup
- Official manuals and specification links

Export Dataset rows to JSON, CSV, Excel, Google Sheets, or your own procurement system.

### Use with n8n / Make

A practical automation is:

1. Start this Actor with an exact item ID or bounded item batch.
2. Wait for the run to finish.
3. Check `OUTPUT.success` and `OUTPUT.errors`.
4. Read the run's default Dataset.
5. Write new prices, availability, lifecycle status, and document URLs to Google Sheets, Airtable, a CRM, ERP, or Telegram alert.

Start a run through the Apify API:

```bash
curl -X POST "https://api.apify.com/v2/acts/dromb~automationdirect-us-product-search-documents/runs?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"mode":"item","itemId":"C2-03CPU"}'
```

After the run succeeds:

```bash
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?clean=true&format=json"
```

For n8n or Make, map `itemId` as the stable product key and compare `price`, `availability`, `orderable`, or `lifecycleStatus` with the previous stored row.

### Proxy strategy

Direct access is the cheapest verified default. Optional layers are available for network-specific failures:

- `NONE`: direct
- `DATACENTER`: Apify datacenter
- `RESIDENTIAL`: an enabled residential group
- `SPECIAL`: an account-enabled special group
- `CUSTOM`: user-supplied proxy URLs

The order in `proxyStrategy.layers` defines priority. Include `NONE` explicitly if direct fallback is desired. Proxy credentials are never written to Dataset or `OUTPUT`.

`proxyConfiguration` remains available for legacy inputs. Enabling both
`proxyStrategy` and a non-empty `proxyConfiguration` is a configuration conflict.
NONE means direct connection. Direct NONE fallback must be explicitly included,
and the `NONE` layer must be explicitly present in the ordered layer list.

Proxy default NONE uses direct NONE transport. This is not a guarantee that every network, geography, or target condition will work without a proxy.

The global request budget has priority over proxy fallback.

Legacy example:

```json
{
  "mode": "search",
  "query": "C2-03CPU",
  "maxItems": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

Ordered fallback example:

```json
{
  "mode": "search",
  "query": "power supply",
  "maxItems": 5,
  "proxyStrategy": {
    "enabled": true,
    "layers": ["DATACENTER", "NONE"],
    "countryCode": "US",
    "datacenterGroups": [],
    "fallbackOn": ["PROXY_PROVIDER_ERROR", "TRANSPORT_ERROR"]
  }
}
```

### Detailed data contract

`item` mode does not perform search and makes one official item lookup.
`batch_items` continues after a per-item error. The Dataset contains only
`recordType = product` and `recordType = error`; it does not contain metadata rows,
proxy rows, summaries, or debug rows.

Example product record:

```json
{
  "recordType": "product",
  "mode": "item",
  "itemId": "C2-03CPU",
  "name": "CLICK PLUS PLC",
  "price": 223,
  "currency": "USD",
  "availability": "in_stock",
  "productUrl": "https://www.automationdirect.com/adc/shopping/catalog/example",
  "documents": [],
  "errors": []
}
```

Example error record:

```json
{
  "recordType": "error",
  "mode": "item",
  "requestedItemId": "INVALID-ID",
  "itemId": null,
  "errors": [
    {
      "code": "NOT_FOUND",
      "message": "Item not found"
    }
  ]
}
```

Dataset views are available as `overview`, `products`, `errors`, and `documents`.

Confirmed structured error codes include `NOT_FOUND`, `UPSTREAM_CLIENT_ERROR`,
`UPSTREAM_RETRY_EXHAUSTED`, `UPSTREAM_SERVER_ERROR`, `INVALID_UPSTREAM_PAYLOAD`,
`UPSTREAM_TRANSPORT_ERROR`, `REQUEST_BUDGET_EXHAUSTED`, `IDENTITY_CONFLICT`, and
`PROXY_CONFIGURATION_CONFLICT`.

### Defaults and safety limits

- `query`: `power supply`
- `maxItems`: `10`, maximum 200
- `enrichItems`: false
- `enrichLimit`: `10`, maximum 20
- `includeDocumentLinks`: true
- `requestDelayMs`: `1000`, maximum 60000
- `maxRetries`: `2`
- `itemIds`: maximum 50
- `proxyConfiguration`: direct by default
- `proxyStrategy`: disabled by default

The runtime is browser-free and does not use, launch, or depend on a browser,
browser automation, or stealth layer. There is no browser fallback.

Currency is not inferred when the upstream source does not provide it.

### Responsible use

Use moderate request volumes and bounded inputs. The Actor does **not** promise a full catalog crawl.
It also does not promise continuous monitoring, document downloads, PDF/CAD/manual parsing,
guaranteed pricing, guaranteed availability, or complete inventory.
It links document files but does not download them.

### Limits

- Public AutomationDirect surfaces only.
- No login, cart, checkout, or account data.
- No full catalog or category crawl.
- Document files are linked, not downloaded or parsed.
- Website/API changes can temporarily affect fields or availability.

# Actor input Schema

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

Operation mode.

## `query` (type: `string`):

Required for search. Try a product family, part number, or component such as power supply.

## `itemId` (type: `string`):

Required for item/document\_links. Non-empty, max length 100.

## `itemIds` (type: `array`):

Required for batch\_items. Raw array maximum 50 before deduplication.

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

Maximum number of search results. Keep this small for quick runs.

## `enrichItems` (type: `boolean`):

When true, enrich first enrichLimit results with official item API.

## `enrichLimit` (type: `integer`):

Maximum number of search results to enrich. Default 10, hard max 20.

## `includeDocumentLinks` (type: `boolean`):

When false, documents array is forced empty.

## `includeTypes` (type: `array`):

Optional filter for document\_links/search document link output.

## `requestDelayMs` (type: `integer`):

Conservative per-request minimum delay. Minimum 1000, maximum 60000.

## `maxRetries` (type: `integer`):

Retryable transport/429/5xx only. Maximum 2.

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

Legacy Apify proxy configuration. Direct access is the verified and cheapest default.

## `proxyStrategy` (type: `object`):

Optional multi-layer proxy strategy. When enabled=true, this takes priority over legacy proxyConfiguration and both must not be enabled at the same time. Layer order defines fallback priority; include NONE explicitly for direct fallback.

## Actor input object example

```json
{
  "mode": "search",
  "query": "power supply",
  "maxItems": 10,
  "enrichItems": false,
  "enrichLimit": 10,
  "includeDocumentLinks": true,
  "requestDelayMs": 1000,
  "maxRetries": 2,
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "proxyStrategy": {
    "enabled": false,
    "layers": [
      "NONE"
    ],
    "countryCode": "US",
    "datacenterGroups": [],
    "residentialGroups": [],
    "specialGroups": [],
    "customProxyUrls": [],
    "fallbackOn": [
      "PROXY_PROVIDER_ERROR",
      "TRANSPORT_ERROR",
      "RETRY_EXHAUSTED"
    ]
  }
}
```

# Actor output Schema

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

Products, item details, batches, or document-link records.

## `summary` (type: `string`):

Status, product/error counts, request count, errors, and effective proxy layer.

# 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 = {
    "query": "power supply"
};

// Run the Actor and wait for it to finish
const run = await client.actor("dromb/automationdirect-us-product-search-documents").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 = { "query": "power supply" }

# Run the Actor and wait for it to finish
run = client.actor("dromb/automationdirect-us-product-search-documents").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 '{
  "query": "power supply"
}' |
apify call dromb/automationdirect-us-product-search-documents --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=dromb/automationdirect-us-product-search-documents",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "AutomationDirect US Product Search & Document Links",
        "description": "Extract AutomationDirect US products, exact item details, technical attributes, pricing, availability, and official PDF/manual/CAD links.",
        "version": "0.2",
        "x-build-id": "NmaIbsjvKopxffeWf"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/dromb~automationdirect-us-product-search-documents/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-dromb-automationdirect-us-product-search-documents",
                "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/dromb~automationdirect-us-product-search-documents/runs": {
            "post": {
                "operationId": "runs-sync-dromb-automationdirect-us-product-search-documents",
                "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/dromb~automationdirect-us-product-search-documents/run-sync": {
            "post": {
                "operationId": "run-sync-dromb-automationdirect-us-product-search-documents",
                "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",
                            "item",
                            "batch_items",
                            "document_links"
                        ],
                        "type": "string",
                        "description": "Operation mode.",
                        "default": "search"
                    },
                    "query": {
                        "title": "Query",
                        "type": "string",
                        "description": "Required for search. Try a product family, part number, or component such as power supply.",
                        "default": "power supply"
                    },
                    "itemId": {
                        "title": "Item ID",
                        "type": "string",
                        "description": "Required for item/document_links. Non-empty, max length 100."
                    },
                    "itemIds": {
                        "title": "Item IDs",
                        "maxItems": 50,
                        "type": "array",
                        "description": "Required for batch_items. Raw array maximum 50 before deduplication.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 200,
                        "type": "integer",
                        "description": "Maximum number of search results. Keep this small for quick runs.",
                        "default": 10
                    },
                    "enrichItems": {
                        "title": "Enrich items",
                        "type": "boolean",
                        "description": "When true, enrich first enrichLimit results with official item API.",
                        "default": false
                    },
                    "enrichLimit": {
                        "title": "Enrich limit",
                        "minimum": 0,
                        "maximum": 20,
                        "type": "integer",
                        "description": "Maximum number of search results to enrich. Default 10, hard max 20.",
                        "default": 10
                    },
                    "includeDocumentLinks": {
                        "title": "Include document links",
                        "type": "boolean",
                        "description": "When false, documents array is forced empty.",
                        "default": true
                    },
                    "includeTypes": {
                        "title": "Document types",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Optional filter for document_links/search document link output.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "requestDelayMs": {
                        "title": "Request delay (ms)",
                        "minimum": 1000,
                        "maximum": 60000,
                        "type": "integer",
                        "description": "Conservative per-request minimum delay. Minimum 1000, maximum 60000.",
                        "default": 1000
                    },
                    "maxRetries": {
                        "title": "Max retries",
                        "minimum": 0,
                        "maximum": 2,
                        "type": "integer",
                        "description": "Retryable transport/429/5xx only. Maximum 2.",
                        "default": 2
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Legacy Apify proxy configuration. Direct access is the verified and cheapest default.",
                        "default": {
                            "useApifyProxy": false
                        }
                    },
                    "proxyStrategy": {
                        "title": "Proxy strategy",
                        "type": "object",
                        "description": "Optional multi-layer proxy strategy. When enabled=true, this takes priority over legacy proxyConfiguration and both must not be enabled at the same time. Layer order defines fallback priority; include NONE explicitly for direct fallback.",
                        "properties": {
                            "enabled": {
                                "title": "Enable proxy strategy",
                                "type": "boolean",
                                "default": false,
                                "description": "Enable the multi-layer proxy strategy. If false, legacy proxyConfiguration remains supported."
                            },
                            "layers": {
                                "title": "Proxy layers in priority order",
                                "type": "array",
                                "editor": "stringList",
                                "default": [
                                    "NONE"
                                ],
                                "description": "Ordered unique layers. NONE must be included explicitly for direct fallback.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "countryCode": {
                                "title": "Country code",
                                "type": "string",
                                "default": "US",
                                "description": "Optional uppercase two-letter country/region code for Apify proxy layers, e.g. US, AU, GB."
                            },
                            "datacenterGroups": {
                                "title": "Datacenter groups",
                                "type": "array",
                                "editor": "stringList",
                                "default": [],
                                "description": "Optional Apify proxy groups for DATACENTER layer.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "residentialGroups": {
                                "title": "Residential groups",
                                "type": "array",
                                "editor": "stringList",
                                "default": [],
                                "description": "Required when RESIDENTIAL layer is used.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "specialGroups": {
                                "title": "Special groups",
                                "type": "array",
                                "editor": "stringList",
                                "default": [],
                                "description": "Required when SPECIAL layer is used.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "customProxyUrls": {
                                "title": "Custom proxy URLs",
                                "type": "array",
                                "editor": "stringList",
                                "default": [],
                                "description": "Required for CUSTOM layer. Values are treated as secrets and are never written to output/evidence.",
                                "items": {
                                    "type": "string"
                                }
                            },
                            "fallbackOn": {
                                "title": "Fallback reasons",
                                "type": "array",
                                "editor": "stringList",
                                "default": [
                                    "PROXY_PROVIDER_ERROR",
                                    "TRANSPORT_ERROR",
                                    "RETRY_EXHAUSTED"
                                ],
                                "description": "Ordered unique fallback reasons that allow switching to the next layer.",
                                "items": {
                                    "type": "string"
                                }
                            }
                        },
                        "default": {
                            "enabled": false,
                            "layers": [
                                "NONE"
                            ],
                            "countryCode": "US",
                            "datacenterGroups": [],
                            "residentialGroups": [],
                            "specialGroups": [],
                            "customProxyUrls": [],
                            "fallbackOn": [
                                "PROXY_PROVIDER_ERROR",
                                "TRANSPORT_ERROR",
                                "RETRY_EXHAUSTED"
                            ]
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
