Skip to content

API guides/India

FreeFreemium

Indian PIN Code API — Free Post Office Lookup

Free Indian PIN code API options: unofficial postalpincode.in for quick lookups vs official data.gov.in datasets. Step-by-step examples for post office, district, and state.

Check official docs

2 providers · 6 min · Limits change — verify before you ship

India

What this is for

A 6-digit Indian PIN code maps to one or more post offices, a district, and a state. For prototypes, the unofficial Postal Pincode API is the fastest free HTTP call. For production, prefer an official data.gov.in catalogue you can cache — and validate PAN/GSTIN/IFSC shapes locally with India fixtures when you are only checking format.

postalpincode.in vs data.gov.in

Two common paths. Use the table, then follow the steps for the path you pick.

 Postal Pincode APIdata.gov.in
Official?No — community wrapperYes — government open data
API keyNoneFree registered key
CORSUsually yes (browser OK for demos)No — call from a server
SLANonePer-dataset quotas
Best forPrototypes, forms, demosProduction caches, compliance

Option A — Free lookup via postalpincode.in

Fastest path when you just need district/state for a PIN in a prototype.

  • Call GET https://api.postalpincode.in/pincode/{6-digit-PIN} (example: 110001).
  • Read Status and PostOffice[] — Name, District, State, and related fields.
  • Cache responses in your app; do not depend on this host for payments or KYC.
  • Confirm the current base URL and terms on https://api.postalpincode.in/ before shipping.

Option B — Official dataset via data.gov.in

Better when you need an attributable government source and can proxy through your backend.

  • Register for a free API key — see the data.gov.in API key guide on PureDevKit.
  • Search data.gov.in for an all-India pincode (or similar) dataset and open its API tab.
  • Copy the resource ID into GET https://api.data.gov.in/resource/{id}?api-key=YOUR_KEY&format=json.
  • Filter or cache by PIN locally; do not put the key in a public SPA.

Related India tools and APIs

PIN lookup pairs with bank and format helpers when you build Indian address or onboarding flows.

  • IFSC branch details — /api-guides/ifsc-bank-details/
  • data.gov.in registration — /api-guides/data-gov-in/
  • Validate PAN / GSTIN / IFSC / UPI shapes — /tools/india-fixtures/
ProviderPricingKeyHTTPSCORS
Postal Pincode API (unofficial)FreeNo keyYesUsually yes
data.gov.in (official catalogues)FreemiumRequiredYesBackend only

Postal Pincode API (unofficial)

Free

GET https://api.postalpincode.in/pincode/{PIN}

Official docs

HTTPS

Yes

API key

No key

CORS

Usually yes

Use

Free tier

Limits. No SLA. Community-run. Cache responses; do not use as a payment-critical dependency.

Commercial. Unofficial. Read the site before commercial use.

Note. This is not India Post’s official product. Confirm the current host and terms on their site.

curl -sS "https://api.postalpincode.in/pincode/110001"

data.gov.in (official catalogues)

Freemium

GET https://api.data.gov.in/resource/{resource_id}?api-key=YOUR_KEY&format=json

Official docs

HTTPS

Yes

API key

Required

CORS

Backend only

Use

See limits

Limits. Free registered key with per-resource quotas. See each dataset’s API tab.

Commercial. Government open data. Follow the dataset licence.

Note. Search data.gov.in for “all India pincode” (or similar) and copy the resource id from that dataset. Full key walkthrough: PureDevKit data.gov.in guide.

curl -sS "https://api.data.gov.in/resource/RESOURCE_ID?api-key=YOUR_KEY&format=json&limit=10"

PureDevKit does not host or proxy these APIs. Pricing, rate limits, CORS, authentication, and JSON shapes can change without notice. Always confirm the current rules on the provider’s official documentation before you ship.