# India Postal PIN Code Scraper (`parseforge/india-postal-pincode-scraper`) Actor

Look up 155,000+ Indian post offices by 6-digit PIN code or branch name. Get circle, region, district, division, block, state, delivery status, and branch type. Bulk lookup via array input. Covers every active India Post location.

- **URL**: https://apify.com/parseforge/india-postal-pincode-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Developer tools, Business, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $10.00 / 1,000 result items

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

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 🇮🇳 India Postal PIN Code Scraper

> 🚀 **Resolve any Indian PIN code in seconds.** Look up **155,000+ post offices** across all 28 states and 8 union territories. Get circle, region, district, division, block, delivery status, and branch type for every active India Post location. Bulk lookups supported.

> 🕒 **Last updated:** 2026-05-22 · **📊 13 fields** per record · **📮 155,000+ post offices** · **🇮🇳 All 28 states + 8 UTs**

The **India Postal PIN Code Scraper** turns India Post's nationwide directory into a clean structured dataset. Pass a list of 6-digit PIN codes or branch names and the Actor returns every matching post office with full geographic and administrative metadata.

Coverage spans **every active India Post location, every circle and region, every district and division, every state and union territory**. Each record exposes circle, region, district, division, block, state, country, branch type (Head Office, Sub Office, Branch Office), and current delivery status. Bulk inputs let you process hundreds of PIN codes in one run.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Indian e-commerce, logistics, KYC, banking, lending, GovTech, address-verification platforms, civic researchers | Address validation, serviceability checks, last-mile routing, KYC verification, delivery zone mapping, demographic enrichment |

---

### 📋 What the India Postal PIN Code Scraper does

Two complementary lookup workflows in a single run:

- 📮 **PIN code lookup.** Pass a 6-digit code and get every post office that shares it.
- 🏷️ **Branch name lookup.** Pass a branch name and get every matching post office across India.
- 📦 **Bulk mode.** Send arrays of codes or branch names in one input.
- 🗺️ **Full administrative hierarchy.** Every record includes state, district, division, region, and circle.

Each record includes branch name, PIN code, branch type, delivery status, full administrative hierarchy, country, the query that produced it, and a timestamp.

> 💡 **Why it matters:** Indian address fields are messy. A PIN code is the most reliable anchor for serviceability, KYC, and routing logic. This Actor makes that lookup deterministic, scriptable, and bulk-friendly.

---

### 🎬 Full Demo

_🚧 Coming soon: a 3-minute walkthrough showing how to validate Indian addresses end-to-end._

---

### ⚙️ Input

<table>
<thead>
<tr><th>Input</th><th>Type</th><th>Default</th><th>Behavior</th></tr>
</thead>
<tbody>
<tr><td><code>maxItems</code></td><td>integer</td><td><code>10</code></td><td>Records to return. Free plan caps at 10, paid plan at 1,000,000.</td></tr>
<tr><td><code>mode</code></td><td>string</td><td><code>"pincode"</code></td><td>Lookup mode: <code>pincode</code> or <code>postoffice</code>.</td></tr>
<tr><td><code>pincodes</code></td><td>string[]</td><td><code>["110001","400001","560001"]</code></td><td>List of 6-digit PIN codes when mode is <code>pincode</code>.</td></tr>
<tr><td><code>branchNames</code></td><td>string[]</td><td><code>[]</code></td><td>List of post office branch names when mode is <code>postoffice</code>.</td></tr>
</tbody>
</table>

**Example: resolve three metro PIN codes.**

```json
{
    "maxItems": 50,
    "mode": "pincode",
    "pincodes": ["110001", "400001", "560001"]
}
````

**Example: find every Connaught Place branch.**

```json
{
    "maxItems": 25,
    "mode": "postoffice",
    "branchNames": ["Connaught Place"]
}
```

> ⚠️ **Good to Know:** a single PIN code can map to multiple post offices, especially in dense urban zones like Delhi, Mumbai, and Bengaluru. The Actor returns every match. For one-to-one mapping logic, key on the combination of `pincode` and `name`.

***

### 📊 Output

Each record contains **13 fields**. Download the dataset as CSV, Excel, JSON, or XML.

#### 🧾 Schema

| Field | Type | Example |
|---|---|---|
| 🏷️ `name` | string | `"Connaught Place"` |
| 📮 `pincode` | string | `"110001"` |
| 🏢 `branchType` | string | `"Head Post Office"` |
| 📦 `deliveryStatus` | string | `"Delivery"` |
| 🗺️ `circle` | string | `"Delhi"` |
| 🌐 `region` | string | `"Delhi"` |
| 🏞️ `district` | string | `"Central Delhi"` |
| 🏛️ `division` | string | `"New Delhi Central"` |
| 🧱 `block` | string | null | `"New Delhi"` |
| 🇮🇳 `state` | string | `"Delhi"` |
| 🌏 `country` | string | `"India"` |
| 🔎 `queryType` | string | `"pincode"` |
| 🆔 `queryValue` | string | `"110001"` |
| 🕒 `scrapedAt` | ISO 8601 | `"2026-05-22T00:00:00.000Z"` |

#### 📦 Sample records

<details>
<summary><strong>📮 Connaught Place, New Delhi (110001)</strong></summary>

```json
{
    "name": "Connaught Place",
    "pincode": "110001",
    "branchType": "Head Post Office",
    "deliveryStatus": "Delivery",
    "circle": "Delhi",
    "region": "Delhi",
    "district": "Central Delhi",
    "division": "New Delhi Central",
    "block": "New Delhi",
    "state": "Delhi",
    "country": "India",
    "queryType": "pincode",
    "queryValue": "110001",
    "scrapedAt": "2026-05-22T00:00:00.000Z"
}
```

</details>

<details>
<summary><strong>🏘️ Bandra, Mumbai (400050)</strong></summary>

```json
{
    "name": "Bandra",
    "pincode": "400050",
    "branchType": "Sub Post Office",
    "deliveryStatus": "Delivery",
    "circle": "Maharashtra",
    "region": "Mumbai",
    "district": "Mumbai",
    "division": "Mumbai West",
    "block": "Mumbai Suburban",
    "state": "Maharashtra",
    "country": "India",
    "queryType": "postoffice",
    "queryValue": "Bandra",
    "scrapedAt": "2026-05-22T00:00:00.000Z"
}
```

</details>

***

### ✨ Why choose this Actor

| | Capability |
|---|---|
| 🇮🇳 | **National coverage.** 155,000+ post offices across every state and union territory. |
| 🔁 | **Dual lookup modes.** Pin code or branch name in the same Actor. |
| 📦 | **Bulk-friendly.** Resolve hundreds of codes in a single run. |
| 🗺️ | **Full administrative hierarchy.** Circle, region, district, division, block, state. |
| ⚡ | **Fast.** Sub-second per lookup with automatic retries. |
| 🔓 | **No key required.** Uses the public India Post directory feed. |
| 📦 | **Export anywhere.** CSV, Excel, JSON, or XML straight from the Apify dataset. |

> 📊 Address-quality issues are one of the top reasons Indian deliveries fail. Anchoring on canonical PIN-code data eliminates a class of errors before they hit logistics.

***

### 📈 How it compares to alternatives

| Approach | Cost | Coverage | Refresh | Filters | Setup |
|---|---|---|---|---|---|
| **⭐ India Postal PIN Code Scraper** *(this Actor)* | $5 free credit, then pay-per-use | **155,000+ post offices** | **Live per run** | by PIN, by branch | ⚡ 2 min |
| Commercial address-validation SaaS | $$$/month | National | Vendor cadence | Many | ⏳ Hours |
| Static PIN-code CSVs | Free | Snapshot | Stale | None | 🐌 Variable |
| Manual lookup on India Post site | Free | National | Live | Click-only | 🐢 Per record |

Pick this Actor when you need scriptable, bulk-friendly PIN-code resolution without a vendor contract.

***

### 🚀 How to use

1. 📝 **Sign up.** [Create a free account with $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) (takes 2 minutes).
2. 🌐 **Open the Actor.** Go to the India Postal PIN Code Scraper page on the Apify Store.
3. 🎯 **Set input.** Choose `pincode` or `postoffice` mode and paste your list.
4. 🚀 **Run it.** Click **Start** and let the Actor resolve every record.
5. 📥 **Download.** Grab your results in the **Dataset** tab as CSV, Excel, JSON, or XML.

> ⏱️ Total time from signup to downloaded dataset: **3-5 minutes.** No coding required.

***

### 💼 Business use cases

<table>
<tr>
<td width="50%" valign="top">

#### 📦 E-commerce & Logistics

- Serviceability checks at checkout
- Cash-on-delivery eligibility by region
- Last-mile routing zone mapping
- Pin-code level delivery SLAs

</td>
<td width="50%" valign="top">

#### 🏦 Banking, Lending & KYC

- Address verification for account opening
- Branch and circle resolution for compliance
- State-level loan eligibility validation
- Customer-base demographic enrichment

</td>
</tr>
<tr>
<td width="50%" valign="top">

#### 🚚 Supply Chain & Operations

- Warehouse coverage gap analysis
- Hub-and-spoke routing design
- Carrier-cost zone modelling
- Returns and reverse-logistics planning

</td>
<td width="50%" valign="top">

#### 📈 Marketing & Demographics

- Pin-code level audience segmentation
- Targeted launch planning by state
- Catchment analysis for retail expansion
- Direct-mail and SMS targeting

</td>
</tr>
</table>

***

### 🔌 Automating India Postal PIN Code Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

- 🟢 **Node.js.** Install the `apify-client` NPM package.
- 🐍 **Python.** Use the `apify-client` PyPI package.
- 📚 See the [Apify API documentation](https://docs.apify.com/api/v2) for full details.

The [Apify Schedules feature](https://docs.apify.com/platform/schedules) lets you trigger this Actor on any cron interval. Daily or weekly refreshes keep address-validation services in sync automatically.

***

### 🌟 Beyond business use cases

India Post data fuels more than commercial workflows. The same structured records support research, education, civic projects, and personal initiatives.

<table>
<tr>
<td width="50%">

#### 🎓 Research and academia

- Postal-network density studies
- Geographic and regional inequality research
- Public-administration coursework on Indian governance
- Reproducible studies with cited dataset pulls

</td>
<td width="50%">

#### 🎨 Personal and creative

- Indie address-lookup apps and browser extensions
- Personal moving and relocation planning tools
- Side projects mapping Indian post-office history
- Hobbyist philately and postal-history databases

</td>
</tr>
<tr>
<td width="50%">

#### 🤝 Non-profit and civic

- Rural-development NGO targeting by block
- Election and census-adjacent civic analyses
- Disaster-response logistics with postal-coverage gaps
- Journalism on access to postal services

</td>
<td width="50%">

#### 🧪 Experimentation

- Train ML models on Indian address parsing
- Prototype address-validation microservices
- Build geocoding fallbacks for incomplete street data
- Validate logistics product hypotheses with real data

</td>
</tr>
</table>

***

### 🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge Actor in the AI of your choice:

- 💬 [**ChatGPT**](https://chat.openai.com/?q=How%20do%20I%20use%20the%20India%20Postal%20PIN%20Code%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🧠 [**Claude**](https://claude.ai/new?q=How%20do%20I%20use%20the%20India%20Postal%20PIN%20Code%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🔍 [**Perplexity**](https://perplexity.ai/search?q=How%20do%20I%20use%20the%20India%20Postal%20PIN%20Code%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)
- 🅒 [**Copilot**](https://copilot.microsoft.com/?q=How%20do%20I%20use%20the%20India%20Postal%20PIN%20Code%20Scraper%20by%20ParseForge%20on%20Apify%3F%20Show%20me%20input%20examples%2C%20output%20fields%2C%20common%20use%20cases%2C%20and%20how%20to%20integrate%20it%20into%20a%20workflow.)

***

### ❓ Frequently Asked Questions

#### 🧩 How does it work?

Choose `pincode` or `postoffice` mode, pass an array of 6-digit codes or branch names, and the Actor returns every matching post office with full hierarchy and delivery status.

#### 🔎 What is a PIN code?

A Postal Index Number (PIN) is the 6-digit code used by India Post to route mail. The first digit identifies the region, the second the sub-region, the third the sorting district, and the last three the specific post office.

#### 📏 Does it cover the entire country?

Yes. The directory covers every active India Post location across all 28 states and 8 union territories, including Head, Sub, and Branch Post Offices.

#### 🔁 How fresh is the data?

Each run hits the live India Post directory feed, so records reflect the current published state at run time.

#### 🏷️ Can one PIN code return multiple post offices?

Yes. Dense urban PIN codes (Delhi, Mumbai, Bengaluru) commonly map to several post offices. The Actor returns every match for downstream filtering.

#### ⏰ Can I schedule regular runs?

Yes. Use Apify Schedules to refresh your address-validation table on any cron interval.

#### ⚖️ Is this data legal to use?

The India Post directory is public information. Address validation use cases are well within fair use, but always confirm downstream compliance for your specific product.

#### 💼 Can I use this data commercially?

Yes. PIN-code reference data is widely used in commercial logistics, banking, and e-commerce stacks across India.

#### 💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small runs (10 records per run). A paid plan lifts the limit and unlocks scheduling, higher concurrency, and larger datasets.

#### 🔁 What happens if a lookup fails?

The Actor retries transient errors and skips lookups that return no records, logging a warning. Successful lookups in the same run are preserved.

#### 🆘 What if I need help?

Our support team is here to help. Reach us through the Apify platform or via the Tally form linked below.

***

### 🔌 Integrate with any app

India Postal PIN Code Scraper connects to any cloud service via [Apify integrations](https://apify.com/integrations):

- [**Make**](https://docs.apify.com/platform/integrations/make) - Automate multi-step workflows
- [**Zapier**](https://docs.apify.com/platform/integrations/zapier) - Connect with 5,000+ apps
- [**Slack**](https://docs.apify.com/platform/integrations/slack) - Get run notifications in your channels
- [**Airbyte**](https://docs.apify.com/platform/integrations/airbyte) - Pipe address data into your warehouse
- [**GitHub**](https://docs.apify.com/platform/integrations/github) - Trigger runs from commits and releases
- [**Google Drive**](https://docs.apify.com/platform/integrations/drive) - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Push fresh PIN-code records into your product backend, or alert your team in Slack.

***

### 🔗 Recommended Actors

- [**🇸🇬 Singapore Open Data Scraper**](https://apify.com/parseforge/singapore-data-gov-sg-scraper) - Whole-of-government Singapore datasets
- [**🗺️ Nominatim OSM Scraper**](https://apify.com/parseforge/nominatim-osm-scraper) - Geocode addresses worldwide via OpenStreetMap
- [**🇦🇷 Argentina Open Data Scraper**](https://apify.com/parseforge/argentina-datos-gob-ar-scraper) - National open-data catalog for Argentina
- [**🇨🇴 Colombia Open Data Scraper**](https://apify.com/parseforge/colombia-datos-gov-co-scraper) - National open-data catalog for Colombia
- [**🇨🇱 Chile Open Data Scraper**](https://apify.com/parseforge/chile-datos-gob-cl-scraper) - National open-data catalog for Chile

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for more reference-data scrapers.

***

**🆘 Need Help?** [**Open our contact form**](https://tally.so/r/BzdKgA) to request a new scraper, propose a custom data project, or report an issue.

***

> **⚠️ Disclaimer:** this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by India Post, the Department of Posts, or the Government of India. All trademarks mentioned are the property of their respective owners. Only publicly available open postal directory data is collected.

# Actor input Schema

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

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000

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

Lookup mode.

## `pincodes` (type: `array`):

List of 6-digit Indian PIN codes. Used when mode is 'pincode'. Example: \['110001','400001','560001'].

## `branchNames` (type: `array`):

List of post office branch names. Used when mode is 'postoffice'. Example: \['Connaught Place','Bandra'].

## Actor input object example

```json
{
  "maxItems": 10,
  "mode": "pincode",
  "pincodes": [
    "110001",
    "400001",
    "560001"
  ]
}
```

# 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 = {
    "maxItems": 10,
    "mode": "pincode",
    "pincodes": [
        "110001",
        "400001",
        "560001"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/india-postal-pincode-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 = {
    "maxItems": 10,
    "mode": "pincode",
    "pincodes": [
        "110001",
        "400001",
        "560001",
    ],
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/india-postal-pincode-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 '{
  "maxItems": 10,
  "mode": "pincode",
  "pincodes": [
    "110001",
    "400001",
    "560001"
  ]
}' |
apify call parseforge/india-postal-pincode-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/india-postal-pincode-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "India Postal PIN Code Scraper",
        "description": "Look up 155,000+ Indian post offices by 6-digit PIN code or branch name. Get circle, region, district, division, block, state, delivery status, and branch type. Bulk lookup via array input. Covers every active India Post location.",
        "version": "1.0",
        "x-build-id": "SOayVt49lksWvPNMf"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~india-postal-pincode-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-india-postal-pincode-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/parseforge~india-postal-pincode-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-india-postal-pincode-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/parseforge~india-postal-pincode-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-india-postal-pincode-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": [
                    "mode"
                ],
                "properties": {
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000"
                    },
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "pincode",
                            "postoffice"
                        ],
                        "type": "string",
                        "description": "Lookup mode."
                    },
                    "pincodes": {
                        "title": "PIN Codes",
                        "type": "array",
                        "description": "List of 6-digit Indian PIN codes. Used when mode is 'pincode'. Example: ['110001','400001','560001'].",
                        "items": {
                            "type": "string"
                        }
                    },
                    "branchNames": {
                        "title": "Branch Names",
                        "type": "array",
                        "description": "List of post office branch names. Used when mode is 'postoffice'. Example: ['Connaught Place','Bandra'].",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
