Checklists are used to record and report on site specific data needed to prepare designs, submit financial documents, confirm installations and many other tasks. The pdf version of the checklist report and associated media files can be synced with your system by following the below steps.
Checklists have statuses. You can monitor status and the updatedAt values on a checklist to trigger workflows, such as downloading media files.
Status | Description |
---|---|
draft | Checklist has been created on the project |
formSubmitted | Checklist has been submitted |
awaitingMedia | Media files are being synced between the mobile app and server |
pdfProcessing | PDF version of the submitted checklist being created |
pdfProcessingFailed | PDF failed to generate, potentially missing or bad media files |
completed | Checklist and supporting media files have been successfully synced, PDF report complete |

Step 1: Make the Get Checklist by project id call to retrieve the list of checklists associated with the project.
GET https://api.portal.scanifly.com/api/v1/checklist/{projectId}
Sample _Get Checklist by project id _response
Some tips to consider:
- To minimize making the same call, you may want to consider storing the highlighted id below. This will be used in subsequent steps and you may want to make additional calls in the future, depending on your workflow.
- The response includes a link to the pdf report of checklist (if the checklist is complete). This link is valid for 24 hours. If the link has expired, you will receive an authentication error.

Step 2: Make the Get checklist by id call
GET https://api.portal.scanifly.com/api/v1/checklist/{projectId}/{checklistId}
You will pass the id value from Step 1 in the URL.
There are fields in the response that you may be interested in parsing out:
Field | Description |
---|---|
title | Checklist title |
status | Checklist status |
label (Component) | Checklist -> Section title |
label | Question title |
mediaCategoryId | ID used to pull all files associated with the checklist question (ID to be passed in Step 3 to pull the associated media files) |
clientRefIds | All media files associated with the question |
Sample_Get checklist by id response_*

Step 3: Make the _Get Media by category ID _call
GET https://api.portal.scanifly.com/api/v1/media/{projectId}/{categoryId}
The categoryId is the mediaCategoryId from step 2.
The response will include links to media files. I believe these links are valid for 24 hours. If you make the call outside of the 24 hour period you'll get an authentication error.
There are fields in the response you may be interested in parsing out or downloading:
Field | Description |
---|---|
imgUrl | Link to media file / image associated with the checklist; link is valid for 24 hours (full sized image) |
thumbnailUrl | Thumbnail version of the imgUrl; link is valid for 24 hours |
geolocation | Media file exif data, location of where the photos was taken |
filename | Image file name |
Sample_Get Media by Category id_ response
