public function merge(array $params = [])
{
$myId = $this->getChainedParameter(get_class($this));
$mergeMe = !isset($myId) || is_null($myId);
$hasKeys = $mergeMe ? ['email', 'password'] : ['id'];
if (!$this->hasKeys($params, $hasKeys)) {
throw new MissingParametersException(__METHOD__, $hasKeys);
}
$response = Http::send($this->client, $this->getRoute(__FUNCTION__), ['postFields' => [$this->objectName => $params], 'method' => 'PUT']);
return $response;
}