# SAM.gov Government Contracts Scraper (`automation-lab/samgov-government-contracts-scraper`) Actor

Find active SAM.gov contract opportunities with agencies, NAICS/PSC codes, contacts, deadlines, descriptions, and official notice links.

- **URL**: https://apify.com/automation-lab/samgov-government-contracts-scraper.md
- **Developed by:** [Stas Persiianenko](https://apify.com/automation-lab) (community)
- **Categories:** Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

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

## SAM.gov Government Contracts Scraper

Find and export public U.S. federal contract opportunities from SAM.gov. This actor searches SAM.gov opportunity notices, follows pagination, and saves clean structured records with agency, office, NAICS, PSC, dates, contacts, descriptions, and direct SAM.gov links.

Use it when you need a repeatable feed of federal procurement opportunities for sales research, bid monitoring, capture management, compliance checks, market intelligence, or internal lead routing.

### What does SAM.gov Government Contracts Scraper do?

The actor collects public opportunity search results from SAM.gov and turns them into a normalized Apify dataset.

It can:

- 🔎 Search by keyword or phrase.
- 🏛️ Filter to active opportunities.
- 📄 Filter by SAM.gov notice type codes.
- 🧭 Filter by NAICS or PSC code.
- ⏱️ Sort by recently modified or recently published notices.
- 📬 Extract contact names, emails, and phone numbers when SAM.gov provides them.
- 🧾 Save cleaned plain-text descriptions for spreadsheet and CRM workflows.
- 🔗 Include direct SAM.gov detail URLs for verification.

### Who is it for?

#### Government contractors

Track active solicitations, combined synopsis notices, presolicitations, and award notices for target keywords and classification codes.

#### Business development teams

Build daily or weekly opportunity lists for account executives, capture managers, proposal teams, and partner managers.

#### Market researchers

Analyze which agencies, offices, and NAICS categories are publishing contract opportunities in your market.

#### Procurement analysts

Monitor federal buying activity, response deadlines, and agency demand without manually refreshing SAM.gov searches.

#### Data teams

Use the Apify API, integrations, and webhooks to load government opportunity data into warehouses, CRMs, dashboards, or alerting systems.

### Why use this actor?

- ✅ HTTP-only implementation keeps runs lightweight and affordable.
- ✅ No SAM.gov account or user API key is required for the public search endpoint.
- ✅ Dataset fields are designed for spreadsheet, CRM, and BI exports.
- ✅ Pagination is handled automatically until your `maxItems` limit is reached.
- ✅ Contact fields are split into clean arrays.
- ✅ Plain-text description is included by default.
- ✅ Raw HTML description can be enabled only when needed.

### Typical use cases

- Daily feed of new active opportunities for `cybersecurity`.
- Weekly search for NAICS `541511` software development opportunities.
- PSC-specific monitoring for vehicles, facilities, logistics, IT, or professional services.
- Capture team routing by agency or office.
- Market sizing by agency, NAICS code, notice type, and deadline.
- Contract opportunity enrichment before human review.

### How much does it cost to scrape SAM.gov government contracts?

The actor uses pay-per-event pricing with a small run-start event and a per-opportunity event. You only pay for opportunities saved to the dataset, plus the standard Apify platform usage included in the actor run.

A small monitoring run can request 25 opportunities. Larger research runs can request hundreds or thousands of opportunities depending on the search result volume available from SAM.gov.

Final tiered pricing is calculated from cloud validation runs before store publication so the actor remains sustainable while staying predictable for users.

### Input configuration

| Field | Type | Default | Description |
| --- | --- | --- | --- |
| `query` | string | `truck` prefill | Keyword or phrase to search. Leave empty for newest active notices. |
| `maxItems` | integer | `50` | Maximum number of opportunities to save. |
| `activeOnly` | boolean | `true` | Return only active opportunities. |
| `noticeTypes` | array | `o`, `k` prefill | SAM.gov notice type codes. |
| `naicsCode` | string | empty | Optional NAICS code filter. |
| `pscCode` | string | empty | Optional Product Service Code filter. |
| `sort` | string | `-modifiedDate` | SAM.gov sort expression. |
| `includeHtmlDescription` | boolean | `false` | Include raw HTML notice description. |

### Example input

```json
{
  "query": "truck",
  "maxItems": 25,
  "activeOnly": true,
  "noticeTypes": ["o", "k"],
  "sort": "-modifiedDate",
  "includeHtmlDescription": false
}
````

### Output data

Each dataset item is one SAM.gov opportunity notice.

| Field | Description |
| --- | --- |
| `id` | SAM.gov opportunity identifier. |
| `title` | Opportunity title. |
| `solicitationNumber` | Solicitation or notice number. |
| `noticeType` | Human-readable notice type. |
| `noticeTypeCode` | SAM.gov notice type code. |
| `active` | Whether the notice is active. |
| `canceled` | Whether the notice is canceled. |
| `publishDate` | Publication date. |
| `modifiedDate` | Last modified date. |
| `responseDate` | Response deadline when available. |
| `archiveDate` | Archive date when available. |
| `department` | Department name. |
| `agency` | Agency name. |
| `office` | Office name. |
| `naicsCodes` | NAICS code array. |
| `naicsTitles` | NAICS title array. |
| `pscCodes` | PSC code array. |
| `pscTitles` | PSC title array. |
| `placeOfPerformance` | Flattened place of performance. |
| `contactNames` | Contact names. |
| `contactEmails` | Contact emails. |
| `contactPhones` | Contact phone and fax values. |
| `descriptionText` | Cleaned plain-text description. |
| `descriptionHtml` | Optional original HTML description. |
| `samUrl` | Direct SAM.gov detail URL. |
| `source` | Source endpoint. |

### Example output

```json
{
  "id": "69c370d6849a4783bcacbd43075693e9",
  "title": "Request for Quote - Supply Pickup Truck Vehicles",
  "solicitationNumber": "19LA9026Q0010",
  "noticeType": "Combined Synopsis/Solicitation",
  "noticeTypeCode": "k",
  "active": true,
  "canceled": false,
  "publishDate": "2026-06-17T04:59:02+00:00",
  "responseDate": "2026-07-18T03:59:00+00:00",
  "department": "STATE, DEPARTMENT OF",
  "agency": "STATE, DEPARTMENT OF",
  "office": "U.S. EMBASSY VIENTIANE",
  "naicsCodes": ["336110"],
  "pscCodes": ["2310"],
  "placeOfPerformance": "Vientiane, LAO",
  "contactEmails": ["VientianeProcurement@state.gov"],
  "samUrl": "https://sam.gov/opp/69c370d6849a4783bcacbd43075693e9/view"
}
```

### How to run it

1. Open the actor on Apify.
2. Enter a keyword, NAICS code, PSC code, or leave the query empty.
3. Set `maxItems` to the number of opportunities you want.
4. Keep `activeOnly` enabled for live pipeline monitoring.
5. Run the actor.
6. Export results as JSON, CSV, Excel, XML, RSS, or HTML.

### Search tips

- Use broad keywords first, then narrow with NAICS or PSC codes.
- Use `activeOnly: true` for bid monitoring.
- Use `activeOnly: false` only when you need historical or archived notices available in search.
- Use notice type `o` for solicitations.
- Use notice type `k` for combined synopsis/solicitation notices.
- Use notice type `p` for presolicitations.
- Use notice type `a` when researching awards.
- Keep `maxItems` small for first tests, then scale once filters look right.

### Notice type examples

SAM.gov uses short notice type codes. Common examples include:

- `o` — Solicitation.
- `k` — Combined Synopsis/Solicitation.
- `p` — Presolicitation.
- `a` — Award Notice.
- `r` — Sources Sought.
- `s` — Special Notice.

The exact codes shown by SAM.gov may evolve. If a code stops returning expected records, run a broad keyword search and inspect the `noticeTypeCode` output values.

### Integrations

You can connect the actor to:

- 📊 Google Sheets for daily opportunity lists.
- 🧰 Airtable for capture pipeline intake.
- 🧾 HubSpot, Salesforce, or Pipedrive via Apify webhooks and Make/Zapier.
- 🏢 Data warehouses such as BigQuery, Snowflake, or Postgres.
- 🔔 Slack or email alerts for new matching notices.
- 🧪 Internal scoring pipelines that rank opportunities by agency, deadline, or classification code.

### API usage

#### Node.js

```js
import { ApifyClient } from 'apify-client';

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('automation-lab/samgov-government-contracts-scraper').call({
  query: 'cybersecurity',
  maxItems: 50,
  activeOnly: true,
});

const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.slice(0, 3));
```

#### Python

```python
from apify_client import ApifyClient
import os

client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('automation-lab/samgov-government-contracts-scraper').call(run_input={
    'query': 'construction',
    'maxItems': 50,
    'activeOnly': True,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items[:3])
```

#### cURL

```bash
curl -X POST 'https://api.apify.com/v2/acts/automation-lab~samgov-government-contracts-scraper/runs?token=YOUR_APIFY_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{"query":"truck","maxItems":25,"activeOnly":true}'
```

### MCP usage

Use the Apify MCP server to call this actor from AI tools.

MCP URL:

```text
https://mcp.apify.com/?tools=automation-lab/samgov-government-contracts-scraper
```

Claude Code setup:

```bash
claude mcp add apify-samgov "https://mcp.apify.com/?tools=automation-lab/samgov-government-contracts-scraper"
```

Claude Desktop JSON config:

```json
{
  "mcpServers": {
    "apify-samgov": {
      "url": "https://mcp.apify.com/?tools=automation-lab/samgov-government-contracts-scraper"
    }
  }
}
```

Example prompts:

- "Find 20 active SAM.gov opportunities for cybersecurity and summarize the agencies."
- "Search SAM.gov for NAICS 541511 and list response deadlines."
- "Collect active vehicle procurement notices and highlight contact emails."

### Data quality notes

SAM.gov records vary by agency and notice type. Some notices have complete contact information and long descriptions, while others have minimal metadata. This actor preserves available values and uses empty arrays or nulls when SAM.gov does not provide a field.

### Limitations

- The actor currently collects search result data returned by the public SAM.gov endpoint.
- It does not download attachments.
- It does not log in to SAM.gov.
- It does not submit bids or interact with procurement workflows.
- SAM.gov can change filters and response fields without notice.

### FAQ

#### Is this an official SAM.gov product?

No. This is an independent Apify actor that extracts publicly available SAM.gov opportunity search data. Always verify procurement decisions on the official SAM.gov notice.

#### Does it require a SAM.gov account?

No. The actor uses public SAM.gov opportunity search data and does not ask for SAM.gov credentials.

### Troubleshooting

#### Why did I get fewer results than `maxItems`?

SAM.gov may have fewer matching records for your keyword and filters. Try a broader query, remove NAICS/PSC filters, or disable specific notice type filters.

#### Why are some contact fields empty?

Not every notice includes public contacts in the search response. The actor exports contacts when SAM.gov includes them.

#### Why is the description shorter than the notice page?

The default `descriptionText` field is cleaned from the search response description. Enable `includeHtmlDescription` if you want the raw HTML body returned by the endpoint.

### Legality and responsible use

This actor collects publicly available SAM.gov opportunity search data. Use the data responsibly, respect SAM.gov terms and applicable laws, and verify important procurement details on the official SAM.gov notice before making business decisions.

### Related scrapers

Other Automation Lab actors that can complement government contract research:

- https://apify.com/automation-lab/website-contact-finder
- https://apify.com/automation-lab/google-maps-lead-finder
- https://apify.com/automation-lab/linkedin-company-scraper
- https://apify.com/automation-lab/indeed-jobs-scraper

### Changelog

#### 0.1

- Initial SAM.gov opportunity search scraper.
- Extracts notices, dates, agency hierarchy, NAICS/PSC data, contacts, descriptions, and SAM.gov links.

### Support

If a run fails or returns unexpected data, include your input JSON and run ID when asking for help. This makes it much easier to reproduce the search and compare it with SAM.gov.

# Actor input Schema

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

Keyword or phrase to search in SAM.gov opportunities. Leave empty to collect the newest active notices.

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

Maximum number of contract opportunities to save.

## `activeOnly` (type: `boolean`):

When enabled, returns only currently active SAM.gov opportunities.

## `noticeTypes` (type: `array`):

Optional SAM.gov notice type codes, such as o (Solicitation), k (Combined Synopsis/Solicitation), p (Presolicitation), a (Award Notice).

## `naicsCode` (type: `string`):

Optional NAICS code filter, for example 336110.

## `pscCode` (type: `string`):

Optional Product Service Code filter, for example 2310.

## `sort` (type: `string`):

SAM.gov sort expression. Common values are -modifiedDate and -publishDate.

## `includeHtmlDescription` (type: `boolean`):

Also include the original HTML notice description. Disabled by default to keep exports clean.

## Actor input object example

```json
{
  "query": "truck",
  "maxItems": 10,
  "activeOnly": true,
  "noticeTypes": [
    "o",
    "k"
  ],
  "sort": "-modifiedDate",
  "includeHtmlDescription": false
}
```

# 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 = {
    "query": "truck",
    "maxItems": 10,
    "noticeTypes": [
        "o",
        "k"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("automation-lab/samgov-government-contracts-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 = {
    "query": "truck",
    "maxItems": 10,
    "noticeTypes": [
        "o",
        "k",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("automation-lab/samgov-government-contracts-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 '{
  "query": "truck",
  "maxItems": 10,
  "noticeTypes": [
    "o",
    "k"
  ]
}' |
apify call automation-lab/samgov-government-contracts-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "SAM.gov Government Contracts Scraper",
        "description": "Find active SAM.gov contract opportunities with agencies, NAICS/PSC codes, contacts, deadlines, descriptions, and official notice links.",
        "version": "0.1",
        "x-build-id": "pTs9WuMSbdWMFuaF6"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/automation-lab~samgov-government-contracts-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-automation-lab-samgov-government-contracts-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/automation-lab~samgov-government-contracts-scraper/runs": {
            "post": {
                "operationId": "runs-sync-automation-lab-samgov-government-contracts-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/automation-lab~samgov-government-contracts-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-automation-lab-samgov-government-contracts-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "query": {
                        "title": "Search query",
                        "type": "string",
                        "description": "Keyword or phrase to search in SAM.gov opportunities. Leave empty to collect the newest active notices."
                    },
                    "maxItems": {
                        "title": "Maximum opportunities",
                        "minimum": 1,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum number of contract opportunities to save.",
                        "default": 50
                    },
                    "activeOnly": {
                        "title": "Active opportunities only",
                        "type": "boolean",
                        "description": "When enabled, returns only currently active SAM.gov opportunities.",
                        "default": true
                    },
                    "noticeTypes": {
                        "title": "Notice type codes",
                        "type": "array",
                        "description": "Optional SAM.gov notice type codes, such as o (Solicitation), k (Combined Synopsis/Solicitation), p (Presolicitation), a (Award Notice).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "naicsCode": {
                        "title": "NAICS code",
                        "type": "string",
                        "description": "Optional NAICS code filter, for example 336110."
                    },
                    "pscCode": {
                        "title": "PSC code",
                        "type": "string",
                        "description": "Optional Product Service Code filter, for example 2310."
                    },
                    "sort": {
                        "title": "Sort order",
                        "type": "string",
                        "description": "SAM.gov sort expression. Common values are -modifiedDate and -publishDate.",
                        "default": "-modifiedDate"
                    },
                    "includeHtmlDescription": {
                        "title": "Include HTML description",
                        "type": "boolean",
                        "description": "Also include the original HTML notice description. Disabled by default to keep exports clean.",
                        "default": false
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
