async def METHOD_NAME(
    self,
    name: str,
    organization: str,
    job_params: dict,
) -> dict:
    obj = await self._get_template_obj(
        name, organization, "workflow_job_template"
    )
    if not obj:
        raise WorkflowJobTemplateNotFoundException(
            (
                f"Workflow template {name} in organization "
                f"{organization} does not exist"
            )
        )
    url = urljoin(self.host, obj["launch"])
    if not obj["ask_limit_on_launch"] and "limit" in job_params:
        logger.warning(
            "Workflow template %s does not accept limit, removing it", name
        )
        job_params.pop("limit")
    if not obj["ask_variables_on_launch"] and "extra_vars" in job_params:
        logger.warning(
            "Workflow template %s does not accept extra vars, "
            "removing it",
            name,
        )
        job_params.pop("extra_vars")
    job = await self._launch(job_params, url)
    return await self._monitor_job(job["url"])