Skip to content
Switch branches/tags
Go to file
Cannot retrieve contributors at this time

Submitting OSM Changesets

OpenMapKit Server integrates nicely with both POSM and OpenStreetMap. It functions as an OpenDataKit Aggregation server, collecting ODK submission from ODK Collect and OpenMapKit Android. Part of that submission data are OpenStreetMap XML representing the edits made in OpenMapKit Android. This data is in the JOSM OSM XML format, and each individual edit can be opened in Java OpenStreetMap.

We have built OpenMapKit Server to work in conjunction with POSM's OSM API as well, and part of the workflow is to submit OSM data received by OpenMapKit Server to POSM for further editing and validation. This is done automatically by the default configuration is POSM is present on the installation.


OpenMapKit Server can submit OSM changesets to any OpenStreetMap API. Currently, you set up your OSM credentials in the settings.js file. If you have a POSM OSM API on the same box, the default setting will work unaltered.

osmApi: {
    server: '',
    user: 'POSM',
    pass: ''

You can, however, submit to the main OpenStreetMap.

osmApi: {
    server: '',
    user: '<your-user-name>',
    pass: '<your-password>'

Automatic Submission

As submissions roll in from ODK Collect, OpenMapKit Server will attempt to submit to the configured OSM API a changeset of the OSM data received on a per-submission basis--1 changeset per ODK submission.

The attempt is made automatically if you have OSM credentials entered in the settings.js.

If the POSM or OpenStreetMap service is not availible, or you have conflicts in your data, you can later resubmit manually.

Manual Submission

The following REST endpoint will attempt to submit all of the JOSM OSM XML in your form's submissions directory that has not yet been submitted.


You can do this by clicking on Submit to OSM in the Submissions page.

Data that has not been submitted successfully or with a conflict will be retried. If you do have a conflict in your data. You can resubmit it by fixing the OSM XML and removing the conflict.json file from the submission directory.

Currently the UI does not give detailed updates on the progress of the submission job, however, you can find that in the log output of OpenMapKit Server. On a POSM installation, that log can be found in /var/log/omk-server.log