User-specific datasets in Central

Dear ODK admin team

Is it possible to allow specific submission to appear back to a certain device based on either organization unit, user name , device id or anything else . Because we don't always want users to see the entire data set; instead, we want them to see data specific to their district or facility or any criteria


Not currently. That is what the last part of the warning in the documentation refers to:

You should also be aware that currently, all devices will always download all Entities. This may not be acceptable to you due to privacy concerns.

That said, you can use the form to filter what specific data collector can see. For example, you can have the form show a select question to select a data collector identifier and also ask for a secret token that only that data collector knows about. You can use a dataset (either a Central-managed Dataset or an attached CSV) to verify the secret. Then you can use an exact match of the secret as a condition for showing follow-up questions.

All Entities would still be on all devices but they would be impractical to access (that is, data collectors would have to install applications). On Android 13+, they would be virtually impossible to access without plugging the device into a computer. Note that this also applies to the dataset you would use to represent data collectors and their secrets.

If you have control of the devices that Collect is installed on, you can do things like prevent the installation of file browsing applications.

Whether this is acceptable to you depends on the level of sensitivity of your data and the trustworthiness of your data collectors.

Beyond privacy, this also has performance implications. If you have a lot of Entities, it may not be practical for every device to get all of them so this is another reason we do want to eventually add segmentation.

If you'd like to see a worked example of what I described, do let us know.