docs: def update(self, component_id, name=None, status=None, description=None,
                 link=None, order=None, group_id=None, enabled=True):
          """Update a component
  
          :param int component_id: Component ID
          :param str name: Name of the component (optional)
          :param int status: Status of the component; 1-4
          :param str description: Description of the component (optional)
          :param str link: A hyperlink to the component (optional)
          :param int order: Order of the component (optional)
          :param int group_id: The group ID of the component (optional)
          :param bool enabled: Whether the component is enabled (optional)
          :return: Updated component data (:class:`dict`)
  
          .. seealso:: https://docs.cachethq.io/reference#components
          .. seealso:: https://docs.cachethq.io/docs/component-statuses
          """
          data = ApiParams()
          data['component'] = component_id
          data['name'] = name
          data['status'] = status
          data['description'] = description
          data['link'] = link
          data['order'] = order
          data['group_id'] = group_id
          data['enabled'] = enabled
          return self._put('components/%s' % component_id, data=data)['data']