/**
  * @param Request $request
  * @return JsonResponse
  */
 public function postConfigsAction(Request $request)
 {
     $params = $this->getPostJson($request);
     $this->checkParams(array('name'), $params);
     try {
         $this->getConfiguration()->exists();
     } catch (ConfigurationException $e) {
         $this->configuration->create();
     }
     $params['accountName'] = $params['name'];
     unset($params['name']);
     if (null != $this->getConfiguration()->getAccountBy('accountId', $this->configuration->getIdFromName($params['accountName']))) {
         throw new ConfigurationException('Account already exists');
     }
     $account = $this->getConfiguration()->addAccount($params);
     return $this->createJsonResponse(array('id' => $account->getAccountId(), 'name' => $account->getAccountName(), 'description' => $account->getDescription()));
 }