type test1 struct { A int `json:"a"` } type test2 struct { A [][]*test1 `json:"a"` } Won't work. Getting error: Converting type main.test2 - slice field test2.A panic: cannot find type for ptr (a/) goroutine 1 [running]: main.main() ../.../......./main.go:25 +0x114 exit status 2 If you change test2.A to 1d array, then works. So multi dimensional array of pointers doesn't seem to work for me