package main import ( "encoding/json" "fmt" ) type Code struct { Id int Desc string `json:"description"` } func main() { var response = `{ "data": { "items": [ { "code": { "id": 42, "description": "The meaning of life" } }] }}` var r = struct { Data struct { Items []struct{ Code Code } } }{} _ = json.Unmarshal([]byte(response), &r) fmt.Printf("%v\n", r.Data.Items[0]) }