public function getGroups()
    {
        $result = [];

        $this->addHeader();
        try {
            $rawGroups = $this->getSoap()->GetAcsEmployeeGroups()->GetAcsEmployeeGroupsResult;
            if (isset($rawGroups->AcsEmployeeGroup) && is_array($rawGroups->AcsEmployeeGroup)) {
                $rawGroups = $rawGroups->AcsEmployeeGroup;
            }
            foreach ($rawGroups as $group) {
                $result[] = new EmployeeGroup((array)$group);
            }
        } catch (\SoapFault $ex) {
            $this->logError();
        }

        return $result;
    }