code: def _validate_data(self, data: dict):
          
          log.debug("validating provided data")
          e = best_match(self.validator.iter_errors(data))
          if e:
              custom_error_key = f"error_{e.validator}"
              msg = (
                  e.schema[custom_error_key]
                  if e.schema.get(custom_error_key)
                  else e.message
              )
              raise BadArguments(validation_error=msg, provider=self.name, data=data)
docs: Validates data against provider schema. Raises :class:`~notifiers.exceptions.BadArguments` if relevant
  
          :param data: Data to validate
          :raises: :class:`~notifiers.exceptions.BadArguments`