Hi @philnauta
I managed to quickly put something together for you.
I’ve prepared an executable file where you can enter:
Server URL
Your API token
Asset UID
Path to a CSV file with the following structure: username, permissions account_test01,add_submissions account_test_02,add_submissions|view_submissions account_test03,view_submissions|change_submissions|validate_submissions
Note the usage of pipe to separate the given permissions.
Slug (permission to use in CSV)
What it grants
view_asset
Preview the form
add_submissions
Submit data (auto-grants view_asset)
view_submissions
View submitted data
change_submissions
Edit submitted data
validate_submissions
Approve/reject submissions
delete_submissions
Delete submissions
change_asset
Edit the form itself
manage_asset
Full control — includes everything above plus managing project settings
Hi Philnauta, you have not specified whether you want your enumerators to work on enketo forms on a PC or using the kobocollect android app. I faced similar challenges in both situtaions and i managed them as below:
Both approaches need a group of questions where the enumerator can be identified (with an unique id and pull data for details) at the start of the survey. The id can be auto captured as metadata using the type ‘username’.
Using enketo forms - i created the forms and opened using the enketo form. Just type ?&d[username]=‘uniqueid of enumerator’. username can be replaced by the name of the field where you get the uniqueid. This will get the details of teh enumerator in the enketo form and will be captured on submission. You can share this url to each of the enumerators so that they can directly enter the form by clicking. You can shorten the url so that the details are masked and cannot be altered. Also you can create a QR code for each enumerator and share.
In kobo collect, you create an account for the enumerators and get all enumerators login to the same account and share the form once through the settings/sharing option. You need to also ensure your enumerators use appropriate unique ids in their app account settings so that the id is auto captured for each of them when they open the forms
Hope this helps. I am available to support further. If you have found any other option better, request you to share the same. thanks
Thanks for sharing this it’s a very nice approach for having your questionnaire prefilled.
Here’s a link to our documentation where this method is explained in more detail:
@philnauta Were you able to review any of the shared solutions?
Please let us know
@jorcabrera thanks for putting that together. We’re going to skip the bulk-permission script for now. Since we’re not creating individual Kobo accounts per enumerator (see below), there’s no per-user permission list to assign.
@seedsalp we’ll use KoboCollect. Your suggestion is close to what we’re doing, but rather than a device-level username metadata field, we already have an in-form select_one question where enumerators pick their name from a list (fed from our CRM). We use that same field to cascade-filter which projects they see. Adding a separate device-level username on top would be a second identity mechanism to keep in sync with the first, so we’re keeping the one we’ve already got.
What we’re landing on for now: one shared KoboCollect login for the whole team, combined with our existing in-form name selection for actual per-submission identity. It doesn’t stop a rogue insider, but it’s better than keeping the form wide open.