code: def _data_from_response(self, resp_body, key=None):
          
          if key:
              data = resp_body.get(key)
          else:
              data = resp_body.get(self.plural_response_key, resp_body)
          # NOTE(ja): some services, such as keystone returns values as list as
          # {"values": [ ... ]} unlike other services which just return the
          # list.
          if isinstance(data, dict):
              try:
                  data = data["values"]
              except KeyError:
                  pass
          return data
docs: This works for most API responses, but some don't structure their
          listing responses the same way, so overriding this method allows
          subclasses to handle extraction for those outliers.