amidaware / tacticalrmm

A remote monitoring & management tool, built with Django, Vue and Go.
https://docs.tacticalrmm.com
Other
3.27k stars 450 forks source link

FEATURE REQUEST: Output additional details in Agents API #1300

Closed joeldeteves closed 2 years ago

joeldeteves commented 2 years ago

Is your feature request related to a problem? Please describe. I am currently working on integrating TacticalRMM with other tools via the API, and I would like to automatically pull inventory from TRMM into SnipeIT.

The problem is, TRMM does not currently provide all the relevant details in the system info that are useful for asset tracking, which means I must categorize all of my assets as Workstations as opposed to Desktops & Laptops, and manually enter serial numbers, etc.

Describe the solution you'd like I would like TRMM to output the following info into the Agents API:

Describe alternatives you've considered I can work around it by searching for keywords like "Book" and "Pad" or even chip type "Xeon" but this is hacky at best.

Additional context It would go under the existing system info with Memory, etc. and be outputted to the API

wh1te909 commented 2 years ago

let me know which api endpoint specifically you want this in and I can add it, since there are multiple endpoints that provide this info

joeldeteves commented 2 years ago

Thanks I'm fetching from Agents

joeldeteves commented 2 years ago

Since we're on this topic, it would be useful to have the Serial Number and Mac Address as well. I'll update the title of the issue accordingly.

joeldeteves commented 2 years ago

Looks like RAM is missing as well.

wh1te909 commented 2 years ago

I wasn't thinking clearly earlier lol, all of this is already exposed via the API here is the endpoint you want to hit: https://api.example.com/agents/<agent_id>/ replace <agent_id> with the actual agent_id the stuff you want will be in the wmi_detail field

joeldeteves commented 2 years ago

I wasn't thinking clearly earlier lol, all of this is already exposed via the API here is the endpoint you want to hit: https://api.example.com/agents/<agent_id>/ replace <agent_id> with the actual agent_id the stuff you want will be in the wmi_detail field

In that case, it be possible to output those other fields in /agents as well? Because we are essentially looping thru each agent from the list. So to have to drill down via the ID is going to double the amount of CPU work (or Tasks if using Zapier).

It is just these handful of fields which would make parsing through every agent much easier.

Also: it appears Agent by ID does not retrieve the serial number or Mac Address either

joeldeteves commented 2 years ago

Adding to my previous comment: There are a couple of fields that are still missing from agent ID:

joeldeteves commented 2 years ago

Hi there, my mistake it seems they were buried under WMI.

I had to do some Python-fu to extract it but it is there.

Thank you,