/** * @param \API_Exception $e * An unhandled exception. * @param array $apiRequest * The full description of the API request. * @return array * (API response) */ public function formatApiException($e, $apiRequest) { $data = $e->getExtraParams(); $data['entity'] = \CRM_Utils_Array::value('entity', $apiRequest); $data['action'] = \CRM_Utils_Array::value('action', $apiRequest); if (\CRM_Utils_Array::value('debug', \CRM_Utils_Array::value('params', $apiRequest)) && empty($data['trace'])) { $data['trace'] = $e->getTraceAsString(); } return $this->createError($e->getMessage(), $data, $apiRequest, $e->getCode()); }