Docs › Developer tools
Fake test data API
Made-up Indian people, companies and addresses for testing apps.
Realistic test records that pass format checks: names from nine language regions, addresses at real pincodes with the right district and state, phone numbers, PANs and GSTINs with a correct check character. Every record is marked fake and none describes a real person or business. Give a seed to get the same records every time.
Generate fake records
GET/v1/fake/{kind}
people have a name, gender, birth date, email (on example domains), phone, PAN and address; companies a name, PAN, GSTIN, email, phone and address.
| Parameter | Description |
|---|---|
kindpath, required | What to generate. One of: people, companies, addresses. |
countquery | How many, 1 to 100. Default 10. |
statequery | State code or name, for example TN or Tamil Nadu. |
seedquery | The same seed gives the same records. Without one, each request differs. |
curl
curl "https://api.dharun.dev/v1/fake/people?count=3&state=TN&seed=42"JavaScript
const response = await fetch("https://api.dharun.dev/v1/fake/people?count=3&state=TN&seed=42");
const body = await response.json();
if (!response.ok) throw new Error(body.error.message);
console.log(body.data);Python
import requests
response = requests.get("https://api.dharun.dev/v1/fake/people?count=3&state=TN&seed=42", timeout=10)
body = response.json()
if not response.ok:
raise RuntimeError(body["error"]["message"])
print(body["data"])Response, with lists and long text shortened
{
"data": [
{
"fake": true,
"name": "Swetha Velusamy",
"firstName": "Swetha",
"lastName": "Velusamy",
"gender": "female",
"birthDate": "1989-02-16",
"email": "[email protected]",
"phone": "+91 78585 85475",
"pan": "IBHPV7917Y",
"address": {
"line1": "No. 234, Nehru Street",
"line2": "Ambedkar Colony",
"city": "Bayamariyanendal",
"district": "Pudukkottai",
"stateCode": "TN",
"state": "Tamil Nadu",
"pincode": "614619"
}
},
{
"fake": true,
"name": "Saravanan Perumal",
"firstName": "Saravanan",
"lastName": "Perumal",
"gender": "male",
"birthDate": "2000-05-23",
"email": "[email protected]",
"phone": "+91 65125 54058",
"pan": "PPBPP7146Z",
"address": {
"line1": "No. 141, Main Road",
"line2": "Lakshmi Nagar",
"city": "Odugampatti",
"district": "Pudukkottai",
"stateCode": "TN",
"state": "Tamil Nadu",
"pincode": "622502"
}
},
{
"fake": true,
"name": "Dinesh Krishnan",
"firstName": "Dinesh",
"lastName": "Krishnan",
"gender": "male",
"birthDate": "1949-12-01",
"email": "[email protected]",
"phone": "+91 64882 31759",
"pan": "UPRPK3338U",
"address": {
"line1": "No. 192, Temple Street",
"line2": "Bharathi Nagar",
"city": "Veluganandal",
"district": "Tiruvannamalai",
"stateCode": "TN",
"state": "Tamil Nadu",
"pincode": "606802"
}
}
],
"meta": {
"total": 3,
"source": {
"name": "All India Pincode Directory",
"url": "https://www.data.gov.in/resource/all-india-pincode-directory-till-last-month",
"licence": "Government Open Data License - India (GODL)",
"version": "23760720 bytes",
"retrieved": "2026-10-13",
"attribution": "Contains data from the All India Pincode Directory, Department of Posts, published on data.gov.in under the Government Open Data License - India."
},
"note": "Made-up test data: no record describes a real person or business. Pincodes, districts and states are real and belong together; everything else is invented. Phon…"
}
}Data source
All India Pincode Directory, 23760720 bytes. Retrieved 2026-10-13. Licence: Government Open Data License - India (GODL). Contains data from the All India Pincode Directory, Department of Posts, published on data.gov.in under the Government Open Data License - India.
Using an AI assistant? Connect the MCP server and it can call this API by itself.