Part of a Data Solution
- Explore →
Postal Codes Solution
Every worldwide postal-code dataset in one bundle — the ultimate global reference for precise postal codes.
Premium
You're viewing a free sample
Get the complete dataset — all rows and files — delivered instantly after checkout, with lifetime access to the latest version.
- Secure checkout via Stripe
- Instant download after payment
- Lifetime access to the latest version
API Access
Access dataset files directly from scripts, code, or AI agents.
Browse dataset files
API Access
Access dataset files directly from scripts, code, or AI agents.
Each file has a stable URL (r-link) that you can use directly in scripts, apps, or AI agents. These URLs are permanent and safe to hardcode.
Start with these files — they give you everything you need to understand and access the dataset.
- 1. Fetch datapackage.yaml to inspect schema and resources
- 2. Download data resources listed in datapackage.yaml
- 3. Read README.md for full context
Data Files
postal-codes-kw-sample
| Field | Type | Description | Title |
|---|---|---|---|
| country_code | string | ISO 3166-1 alpha-2 code for the country - always KW. | Country Code |
| postal_code | string | Postal code (2-6 digits). Read as text. A code can appear on more than one row. | Postal Code |
| place_name | string | Area or post office name (English), as spelled by the ministry. | Place Name |
| admin_name1 | string | Governorate name. | Administrative Name 1 |
| admin_code1 | string | ISO 3166-2:KW governorate code (KU, AH, HA, FA, MU, JA). | Administrative Code 1 |
| admin_name2 | string | Area (same as place_name). | Administrative Name 2 |
| admin_code2 | string | Empty - the source has no code at this level. | Administrative Code 2 |
| admin_name3 | string | Unit the code covers: 'PO Box a-b' or 'Block n'. | Administrative Name 3 |
| admin_code3 | string | Empty - the source has no code at this level. | Administrative Code 3 |
| latitude | string | Empty - the source tables carry no coordinates. | Latitude |
| longitude | string | Empty - the source tables carry no coordinates. | Longitude |
| accuracy | string | Empty. | Accuracy |
| alternative_city_name | string | Area or post office name in Arabic. | Alternative City Name |
About this dataset
Kuwait (KW): migration notes
Internal record of the SST migration. This is a dated record (2026-10-09) and is not shipped in the zip.
- Issue: none (the beads database was unavailable locally when this landed)
- Producer: none. Frozen premium dataset (no
pipeline:), likeomandtm. - Parity: not run (no producer).
History
- P3 migrated
kwas a no-data dataset (data_available: false, header-only CSV). mainthen gained7f56647(2026-10-08): Kuwait rebuilt from the Ministry of Communications tables and sold as premium tier B (premium_source_key: kw/kw.zip). That commit changed only metadata (datapackage.yml,README.md,.licensing-notes.md); no builder script was committed.- The branch merged
maintaking itsdatasets/kwas-is (1a88856), and this commit converts that descriptor to the SST shape.
What was carried over
- Description, sources, tier B and
kw/kw.zipsource key, and the field descriptions, taken from7f56647. Nothing about pricing was decided here. ATTRIBUTION.txtcopied verbatim from the live zip.- No
licensesentry: the licence is unresolved and the owner chose to omit it (see.licensing-notes.md). Frozen datasets may omit it. - Schema stays all-string with no primaryKey (no producer owns it). For a future producer:
(postal_code, place_name, admin_name3)is unique in the live CSV, andpostal_codealone is not.
Checked against R2 (2026-10-09, read only)
- Premium bucket
kw/kw.zip(uploaded 2026-10-08) holdskw.csvwith 5,656 rows, 5,586 distinct codes, all 6 governorates, and no coordinates. - Public
postal.datahub.io/kw/kw.csvis the first 100 rows of that CSV (byte-exact prefix).
Decisions
| Decision | By | Basis |
|---|---|---|
Re-migrate kw on top of main's version | User, 2026-10-09 | PR #37 conflict with 7f56647 |
| Frozen (no producer) | Standing rule (user, 2026-10-03) | No builder scripts in the repo to port |
Open questions
- pending: Do the builder scripts exist outside the repo (the colleague's local checkout)? If they get committed, they can be ported to
scripts/produce.pyand the dataset unfrozen. - pending: The retrieval date differs. The datapackage and README say 2026-10-08; the zip's
ATTRIBUTION.txtanddatapackage.jsonsay 2026-10-06.
Provenance
Written 2026-10-09 from 7f56647, the live zip and sample, and the merge session.