private function sign_request($request, $params)
{
$defaults = array('api_key' => $this->api_key, 'expires' => time() + 900);
$params = wp_parse_args($params, $defaults);
$signature = $this->api_secret . $request['method'] . $request['path'];
ksort($params);
foreach ($params as $key => $val) {
$signature .= $key . '=' . $val;
}
$signature .= empty($request['body']) ? '' : $request['body'];
$signature = hash('sha256', $signature, true);
$signature = preg_replace('#=+$#', '', trim(base64_encode($signature)));
return $signature;
}