Заповнення поштових індексів та КОАТУУ

Салют!

Я маю проект, в якому потрібно координати перетворювати в код КОАТУУ. Я так розумію, що цей код далеко не всюди проставлений, тому рівень заповненості вкрай малий.

Я знайшов інший спосіб: витягувати поштовий індекс з координати через службу Nominatim: https://nominatim.openstreetmap.org/reverse?format=geojson&lat=50.545397610847&lon=30.193782836132

У мене є таблиця з кодом КОАТУУ та проміжком поштових індексів певного населеного пунтку, яку я власноруч підтримую. Виглядає десь так:
8000000000, 01000, 06999.

Тобто я беру координату, отримую з неї поштовий індекс, а з індекса КОАТУУ.

Але бачу, що не всюди правильно визначено поштовий індекс, наприклад, тут:
https://nominatim.openstreetmap.org/details.php?place_id=115974650
Записано, що індекс 08249, хоча такого індексу не існує. В гуглі вказано все правильно:
https://www.google.com/maps/place/Bucha,+Kyiv+Oblast,+08292/@50.5290059,30.1969696,16z/data=!3m1!4b1!4m5!3m4!1s0x472b3174a770a361:0xe0841f4e5bdcc6eb!8m2!3d50.5294427!4d30.2008996

Так ось питання:

  1. Чи існує API для конвертування координати відразу в код КОАТУУ?
  2. Як найкраще виправити цей поштовий індекс? Можливо в мене таких запитів буде багато, тому хотілось би знайти простий спосіб в кілька кліків.
  3. Чи можуть ці всі дані допомогти самому OSM? Якщо так, то яким способом?

КОАТУУ проставлено всім н.п. Можливо десь для десятка-двох не вказано.

КОАТТУ по координатам можна отримати на кадастровій карті http://map.land.gov.ua/kadastrova-karta, але треба робити трансформацію координат (здається в EPSG:900913)
http://map.land.gov.ua/kadastrova-karta/getobjectinfo?x=6312446.6955458&y=3221178.257938&actLayers%5B%5D=kadastr&zoom=12
Але не шліть багато запитів, бо можуть заблокувати

Спасибі!

Яке там обмеження і які альтернативи? Мені потрібно обробити немалий масив даних.

І тут є в зручних координатах
http://atu.minregion.gov.ua/api/format?doct_id=layer_object_info&zoom=12&layer=7376316114267884&id=1&x=50.545397610847&y=30.193782836132&method=feature_ir._info_object

Між іншим, можуть бути платні рішення. Важливою умовою, крім якості даних, — можливість опрацювати великий шмат даних.

Як щодо цього пункту? До речі, знайшов ще одну помилку, Севастополь видає зайву 2-ку перед індексами 299000-299699:
https://nominatim.openstreetmap.org/reverse?format=geojson&lat=44.59523006&lon=33.4839722

http://atu.minregion.gov.ua/api/format?doct_id=layer_object_info&zoom=12&layer=7376316114267884&id=1&x=50.5141092&y=30.4231824&method=feature_ir._info_object
Тут Виноградар попадає під КОАТУУ Подільського району, а не Києва. :confused:

Наскільки я розумію, це стосується лише Києва та Севастополя? І Можна спокійно конвертувати все в проміжку 8000000000-8500000000 у 8000000000?

Ще у mapbox є reverse geocoding. Є як безкоштовні так і платні плани. У них також все на базі осм-даних.
Nominatim показує двійку перед індексами Севастополя, бо російська осм-спільнота позмінювала індекси в Криму.
Так, виходить що райони Києва і Севастополя треба змінювати на коди міст.

Перевага кадcтрової карти і atu.minregion.gov.ua в тому що вони дають код КОАТУУ по геометричному входженню в полігон міськради/сільради, а nominatim і mapbox найчастіше даватимуть поштовий індекс найближчого населеного пункту (центу н.п.)

Справді, хороша штука, заповнив нею свою базу, дякую! Єдине, що для багатьох населених пунктів вертає їхні райони. І це не лише Києва чи Севастополя стосується, а й інших міст, тому прийдеться якось конвертувати в КОАТУУ населених пунктів.

Ще можна якось витягнути список всіх КОАТТУ і їхні властивості одним файлом?

Укрпошта реорганізувалася і закрила БД вулиць за поштовими відділеннями (індексами), офіційно, бо БД застаріла через декомунізацію і час… Вулиці (тобто їх старі назви і тодішні номери будинків, відомі Укрпошті тоді) ще знайти на сайті https://postaldb.net/ru/ukraine/.

Подскажите, насколько правильно в postal_code указывать список почтовых индексов ? postal_code: 54000-54490
Согласно немецкой wiki там должен быть номер. Да и сам тег указывает на единственное число. В повседневной жизни мы указываем в случае незнания кода “общий” индекс, например 54000

https://wiki.openstreetmap.org/wiki/DE:Key:postal_code