ODK Central

ODK Central is the ODK server. It manages user accounts and permissions, forms and submissions, longitudinal data records, and allows data collection clients like ODK Collect to connect to it for form download and submission upload.

Our goal with Central is to create a server that is straightforward to install, easy to use, and extensible with new features and functionality both directly in the software and with the use of our REST, OpenRosa, and OData programmatic APIs.

ODK Central Features

Here are some of the major features we support today:

  • Projects to organize users, permissions, and forms

  • User accounts with role-based permissioning

  • Form upload and management

    • With support for form version updates

    • With drafts and testing on initial creation, and on version updates

    • With form multimedia or data attachments

    • Encrypted forms (self-supplied or project managed keys)

    • Upload XLSForms directly

    • True deletion of forms

  • Submission upload and management

    • Form filling from our mobile app or a web browser

    • From permissions-managed known users or anonymous public links

    • With submission multimedia or data attachments

    • With an interactive table preview of submission data

    • Support for reviewing, commenting on, and editing submissions after upload

    • Connectable to analysis and dashboard applications like Excel, Power BI, or R over OData

    • Entities for registration/follow-up workflows

  • Entity system for longitudinal data management

    • Persist and share data across Form instances

    • Update long-lived records with new information

    • Reference information from these records from Forms during data collection

    • Conflict management system when parallel updates run into each other

    • Bulk upload of existing data

  • Clean and modern REST API for integration and extensibility

  • High performance on low-cost hardware or cloud providers

  • ODK Briefcase-compatible data output

  • ODK Briefcase push/pull support

Central is in active development. We have a lot of exciting ideas for its future and we look forward to hearing yours as well. See What is coming in Central for more on future direction.

ODK Central Overview

Once you have installed Central, you may be wondering where to start.

In Central, everything begins with the Project. Projects organize a Central server into individual little worlds, allowing many separate data collection projects and teams to live on the same server.

Within a Project can live many Forms. Once you author a Form you can upload it to Central, where you can test and preview the Form before publishing it. When it comes time to make changes to a published Form, there is a Form Draft process that helps you update and test the Form safely while important data is still being collected.

When a Form is filled out either directly on the web in Central (using Enketo) or from a mobile client such as Collect, the finalized data will become a Submission in Central. Central has features to allow review and approval/rejection, comments, and edits on Submissions. You can also bulk download your data as a file, connect to a live feed of your data through analysis apps like Power BI or Excel, or use the OData API directly to access data.

Additionally, Submissions can also create or update Entities. An Entity is a lasting data record: a patient, this tree, that school, and so on. Forms in Central can be configured to create or update an Entity with new information when a Submission is uploaded. This updated Entity data is then sent back out to any data collection clients and can then be referenced in future Forms. This allows you to definitively relate repeated encounters with the same Entity together without any homework or guesswork, and it allows you to contextualize and customize the Form filling process using the latest information about a known Entity. In case multiple people try to update an Entity at the same time, there is a conflict management system. Just like Forms and Submissions, Entities live inside of Projects.

Of course, you will need to set up people in the system to do all this work. Right now in Central, Users are divided into two main categories:

  • Web Users who log directly into the Central website, and can be granted permission to:

    • Administrate the entire Central server

    • Manage a particular Project

    • Fill out Forms within a particular Project

    • View collected data within a particular Project

  • App Users who connect to Central from a mobile device running Collect, and can submit data to a controlled set of available Forms. Unlike Web Users which exist across the whole server, App Users are limited to the Project they are created within.

And before you get too far, you might want to think about setting up backups of your data. However, if you're on ODK Cloud you never have to worry about this!

Learn more about ODK Central

Did this page help you?

Selecting an option will open a 1-question survey

👍 Yes 👎 No