Unless the package does this elsewhere, it is much more clear if you return `retval, nil`. It illustrates that `err` is guaranteed to be `nil` when this code is reached (rather than needing to think about it).

Given that, you could further reduce it by just returning the result of `json.Unmarshal` but eh.