# Shine Jobs Search Scraper (`stealth_mode/shine-jobs-search-scraper`) Actor

Efficiently scrape job listings from NaukriGulf.com, the leading job portal for Middle East careers. Extract comprehensive data including job descriptions, company details, salary info, and application methods. Perfect for recruitment agencies, career platforms, and Gulf market employment research.

- **URL**: https://apify.com/stealth\_mode/shine-jobs-search-scraper.md
- **Developed by:** [Stealth mode](https://apify.com/stealth_mode) (community)
- **Categories:** Automation, Developer tools, Jobs
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

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

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

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).


# README

## Shine.com Jobs Search Scraper: Extract Indian Job Market Data at Scale

**Excerpt:** Scrape comprehensive job listings from Shine.com, one of India's leading job portals. Extract detailed data including job titles, salaries, company information, recruiter contacts, work modes, and application details. Ideal for recruitment agencies, market researchers, and HR analytics in the Indian employment landscape.

### Understanding Shine.com and Its Value in Indian Recruitment

Shine.com ranks among India's top job portals, connecting millions of job seekers with employers across industries. The platform specializes in the Indian job market, capturing unique regional hiring patterns, salary structures, and employment trends specific to India's dynamic economy.

Unlike global job boards, Shine provides India-centric data: detailed salary ranges in INR, work mode preferences (office/remote/hybrid), early applicant badges, recruiter contact details, and multi-round interview processes common in Indian hiring. For recruitment agencies operating in India, HR consultancies analyzing market trends, or businesses benchmarking compensation, this data offers unmatched insights into one of the world's fastest-growing job markets.

The Shine.com Jobs Search Scraper automates data collection from search result pages, transforming hours of manual copying into structured datasets ready for analysis, candidate sourcing, or competitive intelligence.

### What This Scraper Extracts and Target Users

This scraper processes Shine.com search result pages—the listings displayed after applying filters for keywords, locations, or industries. It captures multiple job postings per page efficiently, ideal for building broad datasets across sectors or locations.

**Key extracted data includes:**

**Job Identifiers:** Job ID, slug, and redirect URL for tracking and database management.

**Company Information:** Company name, ID, logo, and confidentiality flags for employer profiling.

**Position Details:** Job title, description, keywords, and industry classification for role categorization.

**Compensation:** Salary ranges (critical for Indian market benchmarking), hiring fees, and package codes.

**Requirements:** Experience required, qualification level, employment type, and number of interview rounds.

**Application Data:** Recruiter phone and email (direct contact channels), early applicant badges, work mode (office/remote/hybrid), vacancies count.

**Status Indicators:** Is active, expiry date, posted date, last updated, is shortlisted, hot role flag.

**Employment Classification:** Job type, job type category, employment type (permanent/contract), is permanent job, is home job.

**Target users include:**

**Recruitment Agencies** building candidate databases and tracking open positions across Indian markets. **HR Analytics Firms** analyzing salary trends, hiring patterns, and skill demands. **Market Research Companies** studying employment dynamics in specific industries or regions. **Job Aggregation Platforms** integrating Shine data into their databases. **Corporate HR Teams** monitoring competitor hiring and benchmarking compensation packages.

### Input Configuration: Search URLs and Parameters

The scraper processes Shine.com search result page URLs containing your query parameters.

**Example Input:**

```json
{
  "proxy": {
    "useApifyProxy": false
  },
  "max_items_per_url": 20,
  "ignore_url_failures": true,
  "urls": [
    "https://www.shine.com/job-search/audit-jobs-2?q=audit&qActual=audit&suid=5b3ae1a1-6acc-4167-ac74-f396ecfc8e07"
  ]
}
````

#### Example Screenshot:

![](https://i.ibb.co/bRmfvqds/Screenshot-from-2025-12-25-11-10-02.png)

**Parameter Explanation:**

**proxy:** Set to `false` if Shine doesn't require proxy rotation. For large-scale scraping, enable Apify proxies (`useApifyProxy: true`) with residential IPs to avoid detection.

**max\_items\_per\_url:** Limits extraction to 20 jobs per search page. Shine typically displays 20-25 jobs per page. Increase for comprehensive extraction or decrease for testing.

**ignore\_url\_failures:** When `true`, continues processing remaining URLs if some fail. Essential for batch processing hundreds of search pages.

**urls array:** Contains Shine search result URLs. Build URLs by performing searches on Shine.com and copying the resulting page URLs. Include multiple URLs for different keywords, locations, or industries.

**URL Construction Tips:** Perform manual searches on Shine with your desired filters (location, experience, industry), then copy those URLs. For multi-page datasets, increment page numbers in URLs or increase `max_items_per_url`.

### Complete Output Structure with Field Definitions

**Job ID:** Unique numeric identifier for each job posting. **Use:** Primary key for databases, deduplication, tracking specific positions.

**Is Active:** Boolean indicating if job is currently accepting applications. **Use:** Filtering live opportunities, calculating fill rates.

**Industry:** Sector classification (IT, Finance, Healthcare, etc.). **Use:** Industry-specific analysis, sector trend tracking.

**Job Title:** Position name as posted. **Use:** Role categorization, keyword matching, trend analysis.

**Job Redirect URL:** Direct link to full job posting. **Use:** Accessing complete details, candidate sharing, verification.

**Recruiter Phone / Recruiter Email:** Direct contact information for hiring managers. **Use:** Candidate outreach, bypassing application systems, building recruiter networks.

**High Confidentiality:** Flag for confidential job postings (company not disclosed). **Use:** Identifying sensitive hires, executive search opportunities.

**Hot Role:** Indicates urgent or high-priority positions. **Use:** Prioritizing candidate submissions, identifying fast-moving opportunities.

**Company Name / Company ID / Company Logo:** Employer identification and branding. **Use:** Employer profiling, tracking company hiring patterns, visual displays.

**Salary:** Compensation range in INR. **Use:** Salary benchmarking, market rate analysis, candidate expectation management.

**Job Description:** Full position details, responsibilities, requirements. **Use:** Candidate matching, skill extraction, content for job boards.

**Locations:** Job location(s) within India. **Use:** Geographic filtering, regional demand analysis, relocation planning.

**Posted Date / Expiry Date / Last Updated:** Temporal data for job lifecycle. **Use:** Freshness tracking, time-to-fill calculation, stale listing identification.

**Keywords:** Relevant skills and terms. **Use:** SEO optimization, skill demand analysis, search functionality.

**Experience Required:** Years of experience needed. **Use:** Seniority classification, candidate filtering, experience trend analysis.

**Number of Rounds:** Interview rounds specified. **Use:** Understanding hiring process complexity, candidate preparation.

**Job Type / Job Type Category / Employment Type:** Classification of employment nature. **Use:** Contract vs. permanent analysis, employment type trends.

**Is Shortlisted:** Indicates if job is saved/shortlisted. **Use:** Tracking user engagement, popular positions.

**Job Slug:** URL-friendly identifier. **Use:** SEO-friendly links, alternative tracking ID.

**Is Permanent Job / Is Home Job:** Boolean flags for job characteristics. **Use:** Remote work analysis, permanent position filtering.

**Work Mode:** Office/Remote/Hybrid classification. **Use:** Work arrangement trend analysis, post-pandemic hiring patterns.

**Service Level Agreement:** Response time commitments. **Use:** Understanding employer responsiveness expectations.

**Vacancies:** Number of openings for this role. **Use:** Volume hiring identification, workforce expansion signals.

**Qualification Level:** Educational requirements. **Use:** Qualification demand analysis, candidate eligibility filtering.

**Early Applicant Badge:** Indicates if position rewards early applications. **Use:** Urgency indicator, application timing strategy.

**End Time / Package Code / Special Jurisdictions / Hiring Fee:** Additional metadata. **Use:** Contract details, regional compliance, recruitment cost analysis.

**Crawl Status / Job Board Listing:** Technical metadata. **Use:** Data quality verification, source tracking.

**Is Apply Jump:** Indicates external application process. **Use:** Application method analysis, tracking external vs. platform applications.

**Sample Output:**

```json
[
  {
  "job_id": "18090673",
  "is_active": false,
  "industry": "Accounting & Auditing",
  "job_title": "Tax audit,",
  "job_redirect_url": null,
  "recruiter_phone": "8450964888",
  "recruiter_email": "acv88888@gmail.com",
  "has_high_confidentiality": false,
  "is_hot_role": true,
  "company_name": "AVS MANPOWER CONSULTANCY PRIVATE LIMITED",
  "salary": "Rs 50,000  - 3.5 Lakh/Yr",
  "company_id": 690155,
  "job_description": "\r\n<h2>Job description</h2>\r\n\r\n\r\nwho has completed Inter ca / Article ship, Excellent in Statutory, Tax Audits<br />Salary 25-35k<br />Location Santacruz\r\nQualification Inter ca<br />\r\n<p><strong>Required Candidate profile</strong></p>\r\nB.Com + 3 years CA Article ship completed<br />Who has handled 200 Cr, turnover companies STAT Audit / TAX Audit<br />Ready to work at client side\r\n\r\n<label>Role:<span>&nbsp;Auditor</span></label>\r\n<label>Industry Type:<span>&nbsp;</span></label><span>CA firm</span>\r\n<label>Employment Type:<span>&nbsp;</span></label><span><span>Full Time, Permanent</span></span>\r\n&nbsp;\r\n<span><span>Kindly share your updated cv &amp; refer to your friends&nbsp;+91 77740 65478 / 8450964888</span></span>\r\n<span><span>&nbsp;</span></span>\r\n<span><span>Regards;</span></span>\r\n<span><span>AVS Manpower Consultancy Pvt Ltd,</span></span>\r\n&nbsp;\r\n\r\n",
  "locations": [
    "Mumbai City"
  ],
  "posted_date": "2025-11-14T15:18:39",
  "company_logo": "",
  "keywords": "itr, taxation, gst, auditing,return, file",
  "experience_required": "1 to 6 Yrs",
  "num_rounds": 1,
  "job_type": 1,
  "expiry_date": "2026-01-13T00:00:00",
  "is_shortlisted": false,
  "job_slug": "tax-audit/avs-manpower-consultancy-private-limited/18090673",
  "is_permanent_job": 0,
  "is_home_job": 0,
  "employment_type": 1,
  "job_type_category": 1,
  "service_level_agreement": 0,
  "vacancies": 1,
  "qualification_level": 1,
  "has_early_applicant_badge": false,
  "end_time": null,
  "package_code": "0001",
  "special_jurisdictions": [],
  "hiring_fee": null,
  "crawl_status": 0,
  "job_board_listing": 1,
  "last_updated": "",
  "work_mode": 0,
  "is_apply_jump": true,
  "from_url": "https://www.shine.com/job-search/audit-jobs?q=audit&qActual=audit&suid=5b3ae1a1-6acc-4167-ac74-f396ecfc8e07"
}
]
```

### Implementation Guide

**1. Build Search URLs:** Perform searches on Shine.com with your target filters (keywords, locations, experience levels). Copy resulting URLs. For comprehensive data, create multiple URLs covering different search criteria.

**2. Configure Input:** Add URLs to JSON configuration. Set `max_items_per_url` based on needs (20 for standard pages, higher for deep extraction). Enable `ignore_url_failures` for robust batch processing.

**3. Execute Scraping:** Launch via Apify console. Monitor progress—processing 10 search pages with 20 items each typically completes in 2-4 minutes.

**4. Review Data:** Check dataset preview for completeness. Verify critical fields (job title, company, salary) are populated. Filter out inactive or expired jobs if needed.

**5. Export and Analyze:** Export as JSON (databases), CSV (spreadsheets), or Excel (business reports). Implement data validation—check for missing salaries, invalid dates, or suspicious patterns.

**Scaling Tips:** For datasets exceeding 500 jobs, split into multiple runs. Use incremental scraping—weekly updates capture new postings without re-scraping entire databases. Store historical data to analyze trends over time.

### Strategic Applications for Indian Job Market Intelligence

**Salary Benchmarking:** Analyze salary ranges across industries, locations, and experience levels throughout India. Identify compensation premiums in metros vs. tier-2 cities. Track inflation impact on salary offerings over time.

**Recruiter Network Building:** Extract recruiter contacts to build direct hiring manager databases. Bypass ATS systems for faster candidate placements. Map recruiter-to-company relationships for targeted outreach.

**Work Mode Trend Analysis:** Track adoption of remote, hybrid, and office work across industries post-pandemic. Identify sectors leading in flexible work arrangements. Correlate work mode with salary offerings.

**Hot Role Identification:** Flag urgent positions for priority candidate submissions. Analyze which industries or companies consistently mark roles as "hot" (indicating talent shortages).

**Geographic Demand Mapping:** Visualize job distribution across Indian cities and states. Identify emerging job markets beyond traditional metros. Plan recruitment agency expansions based on job density.

**Early Application Strategy:** Track positions with early applicant badges. Submit candidates quickly to high-priority roles. Analyze correlation between early applications and placement success.

**Interview Process Intelligence:** Map number of interview rounds by industry and seniority. Prepare candidates appropriately for multi-round processes. Identify companies with streamlined vs. lengthy hiring.

**Qualification Demand Analysis:** Track educational requirement trends. Identify skill gaps where demand exceeds supply. Guide career counseling and training programs.

### Best Practices and Data Maximization

**Regular Scraping Cadence:** Schedule weekly scraping to capture market dynamics. Store historical data to analyze hiring velocity, seasonal patterns, and long-term trends.

**Data Enrichment:** Combine Shine data with LinkedIn company pages, Glassdoor reviews, or company financial reports. Cross-reference salaries with cost-of-living indices for real compensation value.

**Quality Assurance:** Validate recruiter contact information before outreach. Flag anomalies—extremely high salaries may be errors, positions open >90 days may be stale.

**Segmented Analysis:** Create separate datasets by industry, location, or experience level. Targeted segmentation produces cleaner insights than broad aggregation.

**Privacy Compliance:** Recruiter contact information may be personal data under privacy regulations. Use responsibly for legitimate recruitment purposes only. Implement data security measures.

**Multi-Source Strategy:** Use Shine data alongside Naukri.com, LinkedIn India, and other platforms for comprehensive market coverage. Different platforms capture different market segments.

### Conclusion

The Shine.com Jobs Search Scraper delivers comprehensive intelligence on India's dynamic job market. From salary benchmarking to recruiter networking, work mode trends to geographic demand analysis, this tool transforms public job data into competitive advantage for recruitment agencies, HR teams, and market researchers operating in India's employment landscape.

# Actor input Schema

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

Add the URLs of the Jobs list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## `max_items_per_url` (type: `integer`):

The maximum number of items to scrape per URL.

## Actor input object example

```json
{
  "urls": [
    "https://www.shine.com/job-search/audit-jobs-2?q=audit&qActual=audit&suid=5b3ae1a1-6acc-4167-ac74-f396ecfc8e07"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

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

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "urls": [
        "https://www.shine.com/job-search/audit-jobs-2?q=audit&qActual=audit&suid=5b3ae1a1-6acc-4167-ac74-f396ecfc8e07"
    ],
    "ignore_url_failures": true,
    "max_items_per_url": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("stealth_mode/shine-jobs-search-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 = {
    "urls": ["https://www.shine.com/job-search/audit-jobs-2?q=audit&qActual=audit&suid=5b3ae1a1-6acc-4167-ac74-f396ecfc8e07"],
    "ignore_url_failures": True,
    "max_items_per_url": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("stealth_mode/shine-jobs-search-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 '{
  "urls": [
    "https://www.shine.com/job-search/audit-jobs-2?q=audit&qActual=audit&suid=5b3ae1a1-6acc-4167-ac74-f396ecfc8e07"
  ],
  "ignore_url_failures": true,
  "max_items_per_url": 20
}' |
apify call stealth_mode/shine-jobs-search-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Shine Jobs Search Scraper",
        "description": "Efficiently scrape job listings from NaukriGulf.com, the leading job portal for Middle East careers. Extract comprehensive data including job descriptions, company details, salary info, and application methods. Perfect for recruitment agencies, career platforms, and Gulf market employment research.",
        "version": "0.0",
        "x-build-id": "Xaa7ZagEBd7Ofp8OE"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/stealth_mode~shine-jobs-search-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-stealth_mode-shine-jobs-search-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/stealth_mode~shine-jobs-search-scraper/runs": {
            "post": {
                "operationId": "runs-sync-stealth_mode-shine-jobs-search-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/stealth_mode~shine-jobs-search-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-stealth_mode-shine-jobs-search-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": {
                    "urls": {
                        "title": "URLs of the Jobs list urls to scrape",
                        "type": "array",
                        "description": "Add the URLs of the Jobs list urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ignore_url_failures": {
                        "title": "Continue running even if some URLs fail to be scraped",
                        "type": "boolean",
                        "description": "If true, the scraper will continue running even if some URLs fail to be scraped."
                    },
                    "max_items_per_url": {
                        "title": "Max items per URL",
                        "type": "integer",
                        "description": "The maximum number of items to scrape per URL."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
