Indonesia Address Parser & Normalizer avatar

Indonesia Address Parser & Normalizer

Pricing

from $1.00 / 1,000 parsed addresses

Go to Apify Store
Indonesia Address Parser & Normalizer

Indonesia Address Parser & Normalizer

Parse and normalize messy Indonesian addresses into structured JSON. Extract province, city/regency, district, village, street, RT/RW, postal code, landmarks, and match confidence. Supports single and batch processing.

Pricing

from $1.00 / 1,000 parsed addresses

Rating

0.0

(0)

Developer

Devan Primadita

Devan Primadita

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Parse messy Indonesian addresses into structured, normalized JSON.

This Actor is designed for Indonesian address data that may contain abbreviations, inconsistent formatting, informal city names, district names, RT/RW, landmarks, and mixed administrative references.

It uses a national Indonesian administrative dataset and custom matching logic to identify the most likely province, city/regency, district, and village level when available.

What it does

The Actor can extract and normalize:

  • Raw address
  • Normalized address
  • Street
  • House number
  • RT
  • RW
  • Village / Kelurahan / Desa
  • District / Kecamatan
  • City / Regency
  • Province
  • Postal code
  • Landmark
  • Region code
  • Match level
  • Match score
  • Confidence
  • Warnings

It supports both single-address and batch processing.

Example input

Single address:

{
"address": "Jl Margonda 45 Beji Depok Jabar"
}
Batch input :
{
"addresses": [
"Jl Kaliurang 25 Depok Sleman Jogja",
"Jl Margonda 45 Beji Depok Jabar",
"Jl Soekarno Hatta 30 Lowokwaru Malang Jatim"
]
}
Example Output :
{
"raw_address": "jl margonda 45 beji depok jabar",
"normalized_address": "Jalan Margonda 45 Beji Depok Jabar, Kota Depok, Jawa Barat",
"street": "Jalan Margonda",
"house_number": "45",
"rt": null,
"rw": null,
"village": null,
"district": "Beji",
"city": "Kota Depok",
"province": "Jawa Barat",
"postal_code": null,
"landmark": null,
"region_code": null,
"national_match_score": 480,
"match_level": "district",
"confidence": 0.6,
"warnings": []
}
Indonesian address normalization
The Actor is built to handle common Indonesian address variations and abbreviations such as:
Jl / Jln → Jalan
Jabar → Jawa Barat
Jateng → Jawa Tengah
Jatim → Jawa Timur
DIY / Jogja → Daerah Istimewa Yogyakarta
Jaksel → Jakarta Selatan
Jaktim → Jakarta Timur
Sby → Surabaya
Mlg → Malang
Bdg → Bandung
Smg → Semarang
Sumut → Sumatera Utara
Sulsel → Sulawesi Selatan
Sulut → Sulawesi Utara
The parser also understands administrative hierarchy to reduce ambiguity between locations with the same or similar names.
For example:
Jl Kaliurang 25 Depok Sleman Jogja
is resolved as:
Province: Daerah Istimewa Yogyakarta
City/Regency: Kabupaten Sleman
District: Depok
Match levels
The match_level field indicates how far the national administrative matcher could confidently resolve the address.
Possible values include:
province
city
district
village
partial
unmatched
The Actor does not intentionally invent lower administrative levels when they are not present in the input.
For example, if an address only contains city and district information, the village field may remain null.
Batch processing
Use the addresses field to process multiple addresses in one run.
Example:
{
"addresses": [
"Jl Setiabudi 12 Setiabudi Jaksel DKI",
"Jl Imam Bonjol 12 Denpasar Barat Bali",
"Jl Gatot Subroto 25 Medan Petisah Sumut"
]
}
Each address is returned as a separate dataset item.
Use cases
This Actor can be useful for:
E-commerce address cleaning
Marketplace seller data
Logistics and delivery systems
CRM data normalization
Customer databases
Lead enrichment
Shipping address validation
Indonesian location analytics
Data cleansing pipelines
ETL workflows
API-based address preprocessing
Output dataset
Results are stored in the default Apify dataset.
They can be exported as:
JSON
CSV
Excel
XML
RSS
The dataset can also be accessed through the Apify API.
API usage
You can run this Actor using the Apify API and retrieve the default dataset after the run finishes.
Typical workflow:
Send address input
→ Run Actor
→ Parse and normalize
→ Store structured results
→ Retrieve dataset through API
This makes the Actor suitable for integration with external applications, backend systems, automation tools, and data pipelines.
Important notes
Indonesian addresses are often incomplete, inconsistent, or ambiguous.
The Actor attempts to resolve administrative hierarchy using national reference data and custom normalization logic, but not every input can be matched perfectly.
When a lower-level administrative area cannot be determined safely, the Actor may return null rather than guess.
For best results, include as much location context as possible, such as:
street + district + city/regency + province
Example recommended format
Jl Soekarno Hatta No. 30 Lowokwaru Kota Malang Jawa Timur
Informal formats and abbreviations are also supported.
Current scope
The Actor currently focuses on Indonesian address parsing and administrative normalization.
Coverage includes national administrative data down to village / kelurahan level where the input provides sufficient information.
Feedback
If you encounter an Indonesian address format that is not parsed correctly, please report the input example so the matching logic can be improved.