# LinkedIn Profile & Company Post Tracker (No Cookies) (`scrapemint/linkedin-profile-posts-scraper`) Actor

Pull posts from any LinkedIn profile or company page without a cookie or login. Each row carries author, engagement counts, media, post type, and timestamp. Optional reactions and comments. JSON. Pay per post.

- **URL**: https://apify.com/scrapemint/linkedin-profile-posts-scraper.md
- **Developed by:** [Kennedy Mutisya](https://apify.com/scrapemint) (community)
- **Categories:** Automation, Jobs, Social media
- **Stats:** 5 total users, 4 monthly users, 0.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

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

## 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

## LinkedIn Posts Scraper — Profile & Company Post Tracker (No Login Required)

Pull every public post from any LinkedIn profile or company page. No cookies. No login. No Sales Navigator seat. Each row ships the post text, the author block, the post type (original, quote, repost), engagement counts, media URLs, and a parsed timestamp. Pay per post. Optional reactions and comments billed separately.

**Built for** B2B sales teams, recruiters, agencies, founders, and competitive intelligence teams who want a clean structured feed of LinkedIn content for outreach, lead generation, and content benchmarking.

**Keywords this actor ranks for:** linkedin posts scraper, linkedin profile scraper no login, linkedin company posts api, scrape linkedin without cookie, linkedin post scraper api, linkedin engagement tracker, linkedin reactions scraper, linkedin comments scraper, linkedin posts to json, linkedin lead scraper, linkedin reposts scraper, linkedin executive content tracker, linkedin post monitoring tool, linkedin scraper free.

---

### Why this actor

| Other LinkedIn scrapers | **This actor** |
|---|---|
| Need your session cookie | Zero cookies, zero login |
| Risk your account on every run | Touches only public surfaces |
| One blob of fields per post | Three post types tagged: original, quote, repost |
| Reactions and comments rarely included | Each reactor and commenter pushed as its own row |
| Timestamps go missing on older posts | Snowflake id decoded as fallback so every row has a date |

---

### How it works

```mermaid
flowchart LR
    A[Profile or company URL] --> B[Search engine<br/>discovery layer]
    B --> C[Public post URLs<br/>linkedin.com/posts]
    C --> D[LinkedIn public embed<br/>no auth needed]
    D --> E[Parse author body time<br/>engagement media]
    E --> F[Push one row per post]
    F --> G[(JSON CSV Excel API)]
````

Discovery happens through search engines that already index public LinkedIn posts (the same way Google shows your name in results). Each post is then fetched from LinkedIn's own embed endpoint, the URL pattern third party sites use to embed a LinkedIn post on their own pages. No cookie passes through the actor at any stage.

***

### What you get per row

```mermaid
flowchart LR
    R[Post row] --> R1[Identity<br/>id urn url embedUrl]
    R --> R2[Author<br/>name profileUrl headline]
    R --> R3[Content<br/>type text textHtml]
    R --> R4[Engagement<br/>reactions comments reposts]
    R --> R5[Media<br/>images video article]
    R --> R6[Timing<br/>postedAt postedText]
```

Turn on `scrapeReactions` or `scrapeComments` and each reactor and each commenter ships as their own dataset row with profile URL attached. Pipe straight into a CRM, a lookalike audience builder, or a sourcing pipeline.

***

### Quick start

**Track posts from one CEO and one company**

```json
{
  "targetUrls": [
    "https://www.linkedin.com/in/satyanadella/",
    "https://www.linkedin.com/company/openai/"
  ],
  "maxPosts": 25
}
```

**Sales prospecting (last 30 days, original posts only)**

```json
{
  "targetUrls": ["https://www.linkedin.com/in/jeffweiner08/"],
  "maxPosts": 50,
  "postedLimitDate": "2026-03-25",
  "includeReposts": false,
  "includeQuotePosts": false
}
```

**Engagement audit (pull reactions and comments per post)**

```json
{
  "targetUrls": ["https://www.linkedin.com/company/anthropic/"],
  "maxPosts": 10,
  "scrapeReactions": true,
  "maxReactions": 100,
  "scrapeComments": true,
  "maxComments": 100
}
```

**Recruiter sourcing (find people who reacted to a hiring exec)**

```json
{
  "targetUrls": ["https://www.linkedin.com/in/aaronlevie/"],
  "maxPosts": 20,
  "scrapeReactions": true,
  "maxReactions": 50
}
```

***

### Sample output

**Post row**

```json
{
  "id": "7188910214502764544",
  "url": "https://www.linkedin.com/posts/satyanadella_the-future-of-ai-activity-7188910214502764544",
  "type": "original",
  "author": {
    "name": "Satya Nadella",
    "url": "https://www.linkedin.com/in/satyanadella/",
    "headline": "Chairman and CEO at Microsoft"
  },
  "text": "AI is the new electricity ...",
  "postedAt": "2026-04-21T14:00:00.000Z",
  "engagement": { "reactions": 12400, "comments": 318, "reposts": 540, "total": 13258 },
  "media": { "images": ["https://media.licdn.com/dms/image/..."], "videoUrl": null },
  "scrapedAt": "2026-04-25T10:00:00.000Z"
}
```

**Reaction row** (only when `scrapeReactions` is on)

```json
{
  "kind": "reaction",
  "postId": "7188910214502764544",
  "reactor": { "name": "Reid Hoffman", "profileUrl": "https://www.linkedin.com/in/reidhoffman/" },
  "reactionType": "praise"
}
```

**Comment row** (only when `scrapeComments` is on)

```json
{
  "kind": "comment",
  "postId": "7188910214502764544",
  "commenter": { "name": "Lisa Su", "profileUrl": "https://www.linkedin.com/in/lisa-su/" },
  "text": "Couldn't agree more. The compute story is just getting started."
}
```

***

### Who uses this

| Role | Use case |
|---|---|
| B2B sales | Track an executive buyer's posts for fresh outreach hooks |
| Demand gen | Pull reactors on a competitor's launch and pipe to a lookalike audience |
| Recruiter | Watch a hiring manager's posts, then enrich the comments to find candidates |
| Agency | Build engagement dashboards for client executives without asking for cookies |
| Founder | Watch competitor CEOs ship narratives in real time |
| M\&A scout | Use founder posts at private companies as a signal layer next to hiring data |
| Content team | Benchmark format performance across a peer set with reactions and comments split out |

***

### Input reference

| Field | Type | What it does |
|---|---|---|
| `targetUrls` | string\[] | LinkedIn profile or company URLs. Required. |
| `maxPosts` | integer | Cap per target URL. 0 means everything we can discover. |
| `postedLimitDate` | string | Drop posts older than this date. ISO date or millisecond timestamp. |
| `includeQuotePosts` | boolean | Include reshares with new commentary. Default true. |
| `includeReposts` | boolean | Include reshares with no commentary. Default true. |
| `scrapeReactions` | boolean | Push one row per reactor. Charged per reaction row. |
| `maxReactions` | integer | Cap reactions per post. 0 means every reaction LinkedIn exposes. |
| `scrapeComments` | boolean | Push one row per commenter. Charged per comment row. |
| `maxComments` | integer | Cap comments per post. 0 means every comment LinkedIn exposes. |
| `concurrency` | integer | Profiles processed in parallel. Six is the safe default. |
| `proxyConfiguration` | object | Apify proxy. Residential is required at any meaningful volume. |

***

### API call

```bash
curl -X POST \
  "https://api.apify.com/v2/acts/YOUR_USER~linkedin-profile-posts-scraper/runs?token=YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "targetUrls": ["https://www.linkedin.com/in/satyanadella/"],
    "maxPosts": 50,
    "postedLimitDate": "2026-03-01"
  }'
```

***

### Pricing

The first few posts per run are free so you can validate output before paying. After that, each post row is charged. Reaction rows and comment rows are billed separately and only when those toggles are on, so the base run cost stays low when you only need post text and engagement counts.

***

### FAQ

#### Do I need a LinkedIn account or cookie?

No. The actor only touches LinkedIn's public embed endpoint and post share URLs that LinkedIn lets search engines index. Your account is never touched.

#### How does discovery work without my cookie?

A search engine site query finds public LinkedIn post URLs from the target profile or company. Public LinkedIn post URLs are designed to be indexed, which is why your own posts show up in Google when people search your name. The actor pulls each post from LinkedIn's public embed endpoint after that.

#### Will I find every post a profile has ever published?

You will find every post that has been indexed publicly. Very recent posts may take a day or two to appear. Posts behind a login wall to anonymous viewers will not be discoverable.

#### How fresh is the data?

Each run hits the live embed page for every post, so reaction counts, comment counts, and repost counts are current at scrape time. Schedule daily runs to track velocity over time.

#### Can I scrape comments and reactions on every post?

Yes. Turn on `scrapeReactions` and `scrapeComments`. Each reactor and each commenter ships as their own row so you can pipe them straight into a CRM or audience tool.

#### Why is the post type tagged "quote" or "repost"?

LinkedIn lets users reshare a post. With added commentary it is a quote post. With no commentary it is a repost. Both are useful signals and both can be filtered out at input time.

#### Why is `engagement.reactions` sometimes null?

LinkedIn does not always render the reaction counter on the embed page when traffic on a post is low. The body, author, and timestamp will still be populated.

#### Can I run this on a schedule?

Yes. Use the Apify scheduler for hourly or daily runs. Combine with `postedLimitDate` to only push fresh posts since the last run.

#### Is scraping LinkedIn allowed?

This actor reads HTML any anonymous web visitor can see. Respect LinkedIn's terms and rate limit sensibly. Do not redistribute commenter or reactor identities you have no lawful basis to process.

***

### Related actors

- **LinkedIn Hiring Tracker & Salary Intelligence** — parsed salary, tech stack, and seniority on every job row
- **Reddit Brand Monitor & Lead Finder** — subreddit mentions and high intent leads
- **Instagram Influencer Analyzer & Sponsored Post Tracker** — creator engagement and paid partnership detection
- **TikTok Scraper** — creator stats, reels, and music data
- **Google Maps Scraper** — local business data and reviews

# Actor input Schema

## `targetUrls` (type: `array`):

List of LinkedIn profile or company URLs whose posts you want to scrape. Examples: 'https://www.linkedin.com/in/satyanadella/', 'https://www.linkedin.com/company/microsoft/'.

## `maxPosts` (type: `integer`):

Hard cap on posts returned per target URL. Set to 0 to scrape all discovered posts.

## `postedLimitDate` (type: `string`):

Only return posts published on or after this date. Accepts ISO date strings like '2026-01-01' or '2026-04-15T08:00:00Z' and unix timestamps in milliseconds. Leave blank for any age.

## `includeQuotePosts` (type: `boolean`):

Quote posts are reshares with new commentary added by the profile. Turn off to filter them out.

## `includeReposts` (type: `boolean`):

Reposts are reshares without commentary. Turn off to keep only original posts and quote posts.

## `scrapeReactions` (type: `boolean`):

Push the people who reacted to each post as separate dataset items. Each reaction row carries the post id, the reactor's name, profile URL, and reaction type. Charged per reaction. Each post still ships a nested reactions preview.

## `maxReactions` (type: `integer`):

Hard cap on reactions scraped per post. Set to 0 to scrape every reaction LinkedIn exposes.

## `scrapeComments` (type: `boolean`):

Push every comment on each post as a separate dataset item. Each comment row carries the post id, the commenter's name, profile URL, comment text, and reply count. Charged per comment. Each post still ships a nested comments preview.

## `maxComments` (type: `integer`):

Hard cap on comments scraped per post. Set to 0 to scrape every comment LinkedIn exposes.

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

Number of profiles processed in parallel. Higher concurrency runs faster but increases proxy and detection risk. Six is a safe default.

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

Apify proxy. Residential is required for LinkedIn at any meaningful volume.

## Actor input object example

```json
{
  "targetUrls": [
    "https://www.linkedin.com/in/satyanadella/",
    "https://www.linkedin.com/company/openai/"
  ],
  "maxPosts": 20,
  "postedLimitDate": "",
  "includeQuotePosts": true,
  "includeReposts": true,
  "scrapeReactions": false,
  "maxReactions": 50,
  "scrapeComments": false,
  "maxComments": 50,
  "concurrency": 6,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}
```

# 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 = {
    "targetUrls": [
        "https://www.linkedin.com/in/satyanadella/",
        "https://www.linkedin.com/company/openai/"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapemint/linkedin-profile-posts-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 = {
    "targetUrls": [
        "https://www.linkedin.com/in/satyanadella/",
        "https://www.linkedin.com/company/openai/",
    ],
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("scrapemint/linkedin-profile-posts-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 '{
  "targetUrls": [
    "https://www.linkedin.com/in/satyanadella/",
    "https://www.linkedin.com/company/openai/"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call scrapemint/linkedin-profile-posts-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "LinkedIn Profile & Company Post Tracker (No Cookies)",
        "description": "Pull posts from any LinkedIn profile or company page without a cookie or login. Each row carries author, engagement counts, media, post type, and timestamp. Optional reactions and comments. JSON. Pay per post.",
        "version": "0.1",
        "x-build-id": "9UCBwbTmygcFnxJNO"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/scrapemint~linkedin-profile-posts-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-scrapemint-linkedin-profile-posts-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/scrapemint~linkedin-profile-posts-scraper/runs": {
            "post": {
                "operationId": "runs-sync-scrapemint-linkedin-profile-posts-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/scrapemint~linkedin-profile-posts-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-scrapemint-linkedin-profile-posts-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "targetUrls"
                ],
                "properties": {
                    "targetUrls": {
                        "title": "Target URLs",
                        "type": "array",
                        "description": "List of LinkedIn profile or company URLs whose posts you want to scrape. Examples: 'https://www.linkedin.com/in/satyanadella/', 'https://www.linkedin.com/company/microsoft/'.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxPosts": {
                        "title": "Max posts per profile",
                        "minimum": 0,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Hard cap on posts returned per target URL. Set to 0 to scrape all discovered posts.",
                        "default": 20
                    },
                    "postedLimitDate": {
                        "title": "Posted on or after",
                        "type": "string",
                        "description": "Only return posts published on or after this date. Accepts ISO date strings like '2026-01-01' or '2026-04-15T08:00:00Z' and unix timestamps in milliseconds. Leave blank for any age.",
                        "default": ""
                    },
                    "includeQuotePosts": {
                        "title": "Include quote posts",
                        "type": "boolean",
                        "description": "Quote posts are reshares with new commentary added by the profile. Turn off to filter them out.",
                        "default": true
                    },
                    "includeReposts": {
                        "title": "Include reposts",
                        "type": "boolean",
                        "description": "Reposts are reshares without commentary. Turn off to keep only original posts and quote posts.",
                        "default": true
                    },
                    "scrapeReactions": {
                        "title": "Scrape reactions",
                        "type": "boolean",
                        "description": "Push the people who reacted to each post as separate dataset items. Each reaction row carries the post id, the reactor's name, profile URL, and reaction type. Charged per reaction. Each post still ships a nested reactions preview.",
                        "default": false
                    },
                    "maxReactions": {
                        "title": "Max reactions per post",
                        "minimum": 0,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Hard cap on reactions scraped per post. Set to 0 to scrape every reaction LinkedIn exposes.",
                        "default": 50
                    },
                    "scrapeComments": {
                        "title": "Scrape comments",
                        "type": "boolean",
                        "description": "Push every comment on each post as a separate dataset item. Each comment row carries the post id, the commenter's name, profile URL, comment text, and reply count. Charged per comment. Each post still ships a nested comments preview.",
                        "default": false
                    },
                    "maxComments": {
                        "title": "Max comments per post",
                        "minimum": 0,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Hard cap on comments scraped per post. Set to 0 to scrape every comment LinkedIn exposes.",
                        "default": 50
                    },
                    "concurrency": {
                        "title": "Concurrency",
                        "minimum": 1,
                        "maximum": 20,
                        "type": "integer",
                        "description": "Number of profiles processed in parallel. Higher concurrency runs faster but increases proxy and detection risk. Six is a safe default.",
                        "default": 6
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Apify proxy. Residential is required for LinkedIn at any meaningful volume.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
