Submit Data to a KoboToolbox Form
kobo_submit_dataSubmit answers directly to a deployed Kobo form via API, bypassing the web form. Use to test forms end-to-end or migrate existing responses into Kobo.
Instructions
Send a response to a deployed form through the API, without going through the web form.
Use it to test a form end-to-end before sending enumerators out, or to migrate answers already collected on paper or in a spreadsheet.
Args:
uid (string): asset uid of the DEPLOYED form
answers (object): values keyed by the question's submission path, exactly as kobo_get_form reports it. A question inside a group is "group_name/question_name". select_multiple values are space-separated codes: "especes mobile_money". Dates are ISO: "2026-09-16". geopoint is "lat lon altitude accuracy".
count (number, default 1): submit the same answers several times, for load-testing only
Returns: the instance id Kobo assigned.
Notes:
Submitted rows are real data and count towards the form's submission total. Delete test rows with kobo_delete_submissions.
Attachments (photos, audio) cannot be sent this way — use the web form for those.
Error Handling:
A rejected submission almost always means a field name that does not exist in the form; check the exact paths with kobo_get_form.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| uid | Yes | Asset uid of the deployed form to submit to | |
| count | No | Submit the same answers this many times — for load-testing a form, not for real data | |
| answers | Yes | Answers keyed by the question's submission path, exactly as kobo_get_form reports it. A question inside a group is 'group_name/question_name'. select_multiple values are space-separated codes, e.g. 'especes mobile_money'. |