Fetching Data

Data can be extracted from your project using the Smart API.  Before data can be extracted, you will need to authenticate and obtain an Access Token. See Authenticating with the API for more details.

Once you have an Access Token, you can use it to fetch data from your project:

Note

Currently, only published data can be extracted from your Smart project. See Understanding Published Data for more details.

The Smart API has a number of URL endpoints that can be used for fetching this data:

See End Points for a list of data end points that can be used for downloading data.

See Relationships to see how the different types of data are related to each other.

Note

The following example uses PostMan but you can use any suitable client.  

Note

The following example fetches submission data but you can use any of the URL endpoints listed above.

Create a new GET request with the following:

Property Value
Request URL https://app.smartsubmissions.io/api/published/submissions
Authorization Bearer XXXXX

Replace XXXXX with your Access Token

Example

Bearer abwx86zGt7AfMJBVh0wpDtRuiIZ_ngLxmpCzSTJbTpnid5r1hatgD4dcikiFU-J1RNfOLLTPrdgiD_3mYUjIZ732AXeT0Rbv9ef-w21Ohorfa3spcogNxMfSbPYzQnukyFcf5gsQ6GiyuherfVVKwbYxvmJljLcmNkedBGpv9Q35qbpS2Tkl2ZAbKfUkCnWj1rOcKnzkUnILfg45SIcxeCWjYMtmhqB7B9zTC0oFWSp7lHXQBrIjAIjurJBcGjTOLqFNeSgP4frtgAOxWLPDQGi8mCndjbAi-XugQC18yfA

Make sure the Authorization token is in the Header of the request and that the Body of the request is empty.

Click Send to fetch your data.

The Smart API will return the requested data as JSON in a format similar to that displayed here:

All returned data includes Version information as follows:

DataVersion the current version number of the Publish Version that is currently available.  

SoftwareVersion is the current version of the API Software that is in use.  This is used to determine the structure of the JSON data.  The Software Version rarely changes but if it does change then the supplied JSON is likely to have a changed structure and you may need to update your client.

Both DataVersion and SoftwareVersion is available in the response header and the API Client can request just headers by using a HEAD request instead of a GET.  In this case, just the headers are returned which is useful when determining if the client has already got the latest version of the data. (See Checking for new Data)