title: Iterate over values of map of interfaces
body: <p>How do I iterate over the map of interfaces below to get the values of the interface returned in the map?</p>
  <p>I have read through the extensive list of questions regarding iteration in Go but they didn't help me.</p>
  <pre><code>// https://api.kraken.com/0/public/AssetPairs
  
  pairsResult, err := api.Query(&quot;AssetPairs&quot;, map[string]string{
  })
  
  if err != nil {
      log.Fatal(err)
  }
  
  ks := reflect.ValueOf(pairsResult).MapKeys()
  
  fmt.Printf(&quot; %+v &quot;, pairsResult) // result A below
  fmt.Printf(&quot; %+v &quot;, ks) // result B below
  
  // the value here is the value of MapKeys, which is the key
  for kix, key := range ks {
      fmt.Printf(&quot; %+v %+v \n &quot;, kix, key) // result C below
  }
  </code></pre>
  <p>Result A</p>
  <blockquote>
  <p>map[AAVEETH:map[aclass_base:currency aclass_quote:currency altname:AAVEETH base:AAVE fee_volume_currency:ZUSD fees:[[0 0.26] [50000 0.24] [100000 0.22] [250000 0.2] [500000 0.18]...</p>
  </blockquote>
  <p>Result B</p>
  <blockquote>
  <p>[KEEPXBT LINKUSD LINKXBT NANOEUR ...]</p>
  </blockquote>
  <p>Result C</p>
  <blockquote>
  <p>0 KEEPXBT 1 LINKUSD 2 LINKXBT 3 NANOEUR 4 USDTAUD  ...</p>
  </blockquote>
  <p>This is the source of the API wrapper function that is being called above</p>
  <pre><code>// Query sends a query to Kraken api for given method and parameters
  func (api *KrakenAPI) Query(method string, data map[string]string) (interface{}, error) {
      values := url.Values{}
      for key, value := range data {
          values.Set(key, value)
      }
  
      // Check if method is public or private
      if isStringInSlice(method, publicMethods) {
          return api.queryPublic(method, values, nil)
      } else if isStringInSlice(method, privateMethods) {
          return api.queryPrivate(method, values, nil)
      }
  
      return nil, fmt.Errorf(&quot;Method '%s' is not valid&quot;, method)
  }
  </code></pre>
  <p>This happens when I try to iterate over the value:</p>
  <p><a href="https://i.stack.imgur.com/1tyB8.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/1tyB8.png" alt="Iterate over value" /></a></p>
  <p>This happens when I try to iterate over the initial result:</p>
  <p><a href="https://i.stack.imgur.com/9kWhe.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/9kWhe.png" alt="Iterate over result" /></a></p>