How to upload files from Mac endpoints to JSS?


Does JAMF Pro offer any mechanism to upload files from Mac endpoints to the JSS?

Requirement: A custom app running on our Mac endpoints generates multiple log files, which are packaged up in a zip file. The zip file then needs to be uploaded from the endpoints to an analytics engine.

Can the JSS add value here, e.g. by acting as an intermediary that runs a script to collect the ZIP files from the Mac endpoints, and then stores them in a folder until they are ready for transfer to the analytics engine?


Legendary Contributor III
Does JAMF Pro offer any mechanism to upload files from Mac endpoints to the JSS?

Technically, yes. There is an Attachments section to every Mac record in the Jamf Pro server. And the API has the ability to add those attachments to the records. However, I wouldn't recommend adding very large attachments or multiple attachments to every record as this really adds size to your database and could cause you some problems later, unless you are clearing those out periodically. Small text files, like service records or other simple text/pdf based documents make good attachments. I'm not sure how well it handles zips since I haven't done that, but it should I think.

But keep in mind that if you can script something, then the Jamf Pro server can run it on your endpoints. Some caveats apply here, such as whether some or all of the script needs to be run as the current user and not as root, but that's still doable with the right know-how.

So the answer is, yes, your Jamf server can help with some of this. It might even be able to upload the resulting zips to the analytics server, depending on if you can use something like curl or ftp other tools to do the upload. This would bypass using the Jamf server as the intermediary collection point.