docs: def format_permission_object(self, permissions):
          """Formats a list of permission key names into something the SLAPI will respect.
  
          :param list permissions: A list of SLAPI permissions keyNames.
                                   keyName of ALL will return all permissions.
          :returns: list of dictionaries that can be sent to the api to add or remove permissions
          :throws SoftLayerError: If any permission is invalid this exception will be thrown.
          """
          pretty_permissions = []
          available_permissions = self.get_all_permissions()
          # pp(available_permissions)
          for permission in permissions:
              # Handle data retrieved directly from the API
              if isinstance(permission, dict):
                  permission = permission['keyName']
              permission = permission.upper()
              if permission == 'ALL':
                  return available_permissions
              # Search through available_permissions to make sure what the user entered was valid
              if _keyname_search(available_permissions, permission):
                  pretty_permissions.append({'keyName': permission})
              else:
                  raise exceptions.SoftLayerError("'%s' is not a valid permission" % permission)
          return pretty_permissions