Hi there. I've posted this on the other "API update" thread but it seems to have gone by unnoticed. I also opened a ticket where I was told this was a good idea and the ticket closed, so here it is so we can see if there's any other customers that support this request.
I would like to request that on the "server/list" API request, the "tag" field also be returned on the API results. Ideally an optional parameter "tag" could also be passed to the request (as we can now pass the SUBID param) and have just the servers with that specific tag returned.
Also on the "server/create" endpoint, we should be able to set the tag when using the API to create new servers.
The reason for this is that if we want to integrate your API and are using a large (or growing or very dynamic) server set and a configuration management tool (in my case Ansible, but I suspect both Chef and Puppet probably have something similar) then we absolutely need the ability to manage groups of servers according to their role which we could use the tag field to define it like web/cache/ha/db/etc.
As it is now, we have to keep some sort of local mapping of servernames/subids<->tag/role just to be able to group our servers and then get all servers from your api and loop through them to get to specific groups or alternatively do a single request per server with the subid param which I don't think it would be what you recommend for large server sets.
I won't assume to know how complex is your system or how it's setup, but you already support the tag field on the control panel so I don't believe this would be a very hard or time consuming feature to add and it would greatly improve the usage of your API. It could even potentially lighten the load on your API servers since clients could just request a subset of servers instead of having all of them in one call or requesting a large group individually.