def activate_boost_by_id(self, zone_id, target_temperature, num_hours=1):
        """
        Activate boost for a zone based on the numeric id
        """
        if not self._do_auth():
            raise RuntimeError("Unable to login")

        zones = [zone_id]
        data = {
            "ZoneIds": zones,
            "NumberOfHours": num_hours,
            "TargetTemperature": target_temperature
        }

        headers = {
            "Accept": "application/json",
            "Content-Type": "application/json",
            'Authorization':
                'Bearer ' + self.login_data['token']['accessToken']
        }

        url = self.api_base_url + "Home/ActivateZoneBoost"

        response = requests.post(url, data=json.dumps(
            data), headers=headers, timeout=10)

        if response.status_code != 200:
            return False

        boost_data = response.json()

        return boost_data.get("isSuccess", False)