En Postgres 9.4 podría usar json_build_object () .
Para su ejemplo, funciona como:
SELECT group_id,
json_agg(json_build_object('id', id, 'name', name, 'body', body))
FROM temp
GROUP BY group_id;
esta es una forma más amigable, Postgres nos ama :3