Я бы предпочел второй способ. Указывание типа ответа вполне логично. Явное лучше чем неявное.
Еще Вы можете без параметров, а прямо в endpoint-е от URI:
На псевдо-питоне:
@app.route('employes/<uiid:string>/format/<type:string>')
def get_empoyes(uuid, type):
if type == 'json':
pass
elif type== 'xml':
pass
elif type == binary:
pass
else:
abort(404)
Также отмечу, что ответ лучше всегда сопровождать с content-type. А то некоторые забывают и приходится писать детекторы формата ;(((
P.S.:
По выбору имен. Имя 'type' ни о чем не говорит. Тип чего? Ответа? А может тип служащего? Тип автомобиля на котором ездит служащий?
P.S. #2:
Рекомендую почитать статью-перевод на хабре "RESTful API для сервера – делаем правильно" и книгу, которую привели в конце части 2