High Level
- Anytime the as user sees any data of a file entity. This means the file attached to the entity (not the entity metadata) and can include:
- Viewing a preview of the entity's file
- Downloading the entity's file.
- Anytime the user sees any cell in a table entity (not the table's metadata or schema) . The type of the column does not matter (viewing a cell of any column type is considered a "download"). Viewing a cell can include:
- Running any query (even a query of a single cell like 'select id from syn123 limit 1')
- Downloading the contents of the table as a CSV.
Low Level
There are many API calls that will meet the criteria above. Each time a new API is added we need to evaluate if it would be considered as a "download" using the criteria above.