OpenFn now accepts form submissions directly from ODK Collect, cutting out the need to maintain an ODK Aggregate instance in many cases.

Connect ODK Collect with any application using OpenFn.

OpenFn Founder’s Blog
Nov 5 · 4 min read

We’re big Open Data Kit fans at OpenFn. It’s got over half a million downloads, it was awarded the Pizzigati Prize 7 years before OpenFn, and it accounts for a sizeable portion of the “source data” we process for NGOs around the world: routing form submissions from ODK into systems like DHIS2, Salesforce, Microsoft Dynamics, Carto, or various custom databases built on Postgres or MySQL all in real time.

Until now, harnessing ODK meant not only loading blank forms and the ODK Collect app onto Android phones to be used in the field, but setting up an maintaining an ODK Aggregate instance that could receive form submissions. On ODK Aggregate, our clients then set up a JSON “form publisher” that relays data on to OpenFn.

Now, OpenFn can accept ODK Collect form submissions directly, meaning NGOs no longer need to maintain an ODK Aggregate instance to make use of ODK data in real time!

With a small tweak to our /inbox endpoint (allowing and parsing a certain kind of multi-part request, if you’re curious) we can now accept simple submissions directly from ODK Collect, meaning that implementers who want to harness the power of ODK and route that submission data to their own management information systems, add records to government DHIS2 instances, trigger mobile payments, plot new points on a map, or trigger whatever complex workflows they can dream up no longer need to maintain an ODK Aggregate instance.

Before reading on, please note that we haven’t yet implemented media storage for general projects on OpenFn. This means that you can’t send images, video, or audio files along with your submissions—yet!

It’s not a big change—end users won’t notice a difference, but it means one less moving part to worry about when setting up an intergrated enterprise system. And that’s a good thing.

So, how do you do it?

(1) First, you’ve got to have ODK Collect installed on your phone. You can download ODK Collect from the App Store. Next, you’ve got to load your forms onto the phone. You can email them, download them from the web, or transfer them via USB but you’ve next got to move them into the /Internal storage/odk/forms directory for ODK to discover them.

Copy forms to /Internal storage/odk/forms

(2) When the forms are on the phone, what’s left is to point ODK Collect to your OpenFn inbox URL. This can be done in General Settings > Server and you’ll want to set Type to “Other”, URL to “https://www.openfn.org/inbox” and Submission path to “/your-inbox-uuid”. If you’re already using OpenFn, you know that your unique inbox UUID is available either in the Inbox view or the Project Settings view.

Set the URL and Submission path for your OpenFn inbox

(3) Next, try filling out a form and pressing submit. You’ll see the familiar success message, and when you navigate to your OpenFn project space, the form submission (parsed and converted to JSON) will appear in your inbox.

(4) From there, all of the triggers, jobs, and flows you’ve configured in OpenFn can get to work, cleaning, routing, or automating tasks in whatever other systems your organization uses, based on these data as if it had been submitted by ODK Aggregate.

While this isn’t a big change, we’re hoping that it does go a long way to helping NGOs that might not have big IT departments create powerful, integrated systems without taking on the overhead of server or infrastructure management. Technology should be easy to set up, pilot, and scale and we should all be able to do it. Not just big iNGOs or corporates with a direct line between technological efficiency and profits.

Consider this…

For simple offline data collection, a small NGO can now:

  1. Download ODK Collect.
  2. Load a blank form onto the phone.
  3. Send submissions directly to a FREE project on OpenFn.
  4. Load those submissions onto a Google Sheet, send email notifications to staff, or plot points on CartoDB all without setting up a single server, or paying a cent.

That gets us pretty fired up. We’ll look forward to collaborating with partners to add media handling to free plans in the future, and will keep you all posted on the developments here. But for now, happy integrating.

P.S. You can set up that free OpenFn project inbox by signing up here!

OpenFn Founder’s Blog

Written by

We’re building a fully customizable integration platform to make ICT4D work better. I’m Taylor. Stay tuned for OpenFn news and my own two cents on data systems.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade