src/Ovh/Dedicated/Server/ServerClient.php
public function setMonitoring($domain, $_enable)
    {	
        if (!$domain)
            throw new BadMethodCallException('Parameter $domain is missing.');
        $domain = (string)$domain;
		if ($_enable == "on") {
			$enable = true;
		} else {
			$enable = false;
		}

//        if (!$enable)
//            throw new BadMethodCallException('Parameter enable is missing.');
        if (!is_bool($enable)) {
            throw new BadMethodCallException('Parameter $enable must be a boolean');
        }
        $payload = array('monitoring' => $enable);
        try {
            $r = $this->put('dedicated/server/' . $domain, array('Content-Type' => 'application/json;charset=UTF-8'), json_encode($payload))->send();
        } catch (\Exception $e) {
            throw new ServerException($e->getMessage(), $e->getCode(), $e);
        }
        return $r->getBody(true);
    }
public function setMonitoring($domain, $_enable)
    {	
        if (!$domain)
            throw new BadMethodCallException('Parameter $domain is missing.');
        $domain = (string)$domain;
		if ($_enable == "on") {
			$enable = true;
		} else {
			$enable = false;
		}

//        if (!$enable)
//            throw new BadMethodCallException('Parameter enable is missing.');
        if (!is_bool($enable)) {
            throw new BadMethodCallException('Parameter $enable must be a boolean');
        }
        $payload = array('monitoring' => $enable);
        try {
            $r = $this->put('dedicated/server/' . $domain, array('Content-Type' => 'application/json;charset=UTF-8'), json_encode($payload))->send();
        } catch (\Exception $e) {
            throw new ServerException($e->getMessage(), $e->getCode(), $e);
        }
        return $r->getBody(true);
    }
public function setMonitoring ( $ domain , $ _enable ) { if ( ! $ domain ) throw new BadMethodCallException ( 'Parameter $domain is missing.' ) ; $ domain = ( string ) $ domain ; if ( $ _enable == "on" ) { $ enable = true ; } else { $ enable = false ; } //        if (!$enable) //            throw new BadMethodCallException('Parameter enable is missing.'); if ( ! is_bool ( $ enable ) ) { throw new BadMethodCallException ( 'Parameter $enable must be a boolean' ) ; } $ payload = array ( 'monitoring' => $ enable ) ; try { $ r = $ this -> put ( 'dedicated/server/' . $ domain , array ( 'Content-Type' => 'application/json;charset=UTF-8' ) , json_encode ( $ payload ) ) -> send ( ) ; } catch ( \ Exception $ e ) { throw new ServerException ( $ e -> getMessage ( ) , $ e -> getCode ( ) , $ e ) ; } return $ r -> getBody ( true ) ; }
********************************************

This didmt work passing bools though as $enable - testing logic on bools is a PITA.

if (!var) when var == false => true, and that was tossing missing paramaeter messages.

modified to pass on/off instead
********************************************