...
Log in to your CommCareHQ account.
Navigate to the project space where you want to enable the OData feed.
Go to Data > Export Data.
Choose the type of data you want to create an OData feed for (e.g., Forms or Cases).
Click on the + Create OData Feed button next to the relevant data export (just like you configure a Form or Case Export)
Copy the OData feed/s
On Power BI / Tableau Desktop, select OData Feed/OData as your connection type.
Enter your OData feed/s, and login using your CommCare credentials
Ensure you have the necessary authentication details, as OData feeds require authentication to access. If you are using 2FA or SSO, specify your API key as the password. Your API Key can be found under your My Account Settings.)
For PowerBI, use Basic Authentication
For Tableau Desktop: use authentication type 'Username and Password'
PowerBI Set-Up
...
Power BI Desktop: Use Basic Authentication
Helpful Resources: https://learn.microsoft.com/en-us/power-query/connectors/odata-feed
...
Tableau Set
...
Up
Helpful Resources: https://help.tableau.com/current/pro/desktop/en-us/examples_odata.htm
...
OData Feeds Best Practices
As you get started, below are a few things to keep in mind.
Secure Your Data
...
Ensure that access to your OData feed is secured and only available to authorized users.
...
Monitor Data Usage: Keep an eye on how your OData feed is being used to ensure optimal performance.
...
One way that you can do this is by setting up a web user read-only role limited to read OData feeds. To do this
Navigate to Users / Roles & Permissions
Click +Add Role at the bottom of the page
Provide a name to this role: e.g. Read-Only OData
Unselect all permissions except the ones below:
Export Form Data (if necessary)
Export Case Data (if necessary)
PowerBI/Tableau Integration
Allow role to access data from all locations
Save and assign this role to a user
...
Monitor Data Usage
As a reminder, OData Feeds may start to experience performance issues start around 500,000 rows per case or form export configured via the OData feed. Keep an eye on your data usage to ensure you’re not coming up against this threhold.
Data Tips & Tricks
Below are some tips in configuring your data in CommCare to work with OData Feeds
Number Column
...
: The "number" column in the OData feeds will export the case_id or form_id of the case instead of a serial number. This is because “numbers” usually shift around with pagination and when data being continuously updated. Case_ids or form_ids are the only ID that remain constant, and hence we’re using the case or form ids in the number column, so that when a refresh is done, the export is able to identify case or form ids that were previously exported, which then prevents duplicates.
Repeat Groups
...
: If setting up an OData Feed for a form that contains Repeat Groups , you will also need to reference the additional feeds created for that repeat group data if it is of interest. Each repeat group will have its own OData URL.
...
When querying Repeat Group OData URLs, the
limit
andoffset
parameters operate at the form level, meaninglimit=1
will return all responses within a repeat group for one form.
...
Bulk Delete Integration Feeds
The bulk delete OData integration feed gives you the option to bulk delete multiple exports at once.
...