• Модуль: mail
  • Путь к файлу: ~/bitrix/modules/mail/lib/registrar/omnilance.php
  • Класс: BitrixMailRegistrarOmnilance
  • Вызов: Omnilance::getDomainsList
static function getDomainsList(string $user, string  $password, ?string &$error): ?array
{
	$list = [];
	$currentPage = 1;
	$omnilance = new self($user, $password);

	do
	{
		$res = $omnilance->sendGetCommand('domains/100/' . $currentPage);
		$res = json_decode($res, true);

		if (isset($res['error']))
		{
			$error = $res['message'] ?? $res['error'];
			return null;
		}

		if (!isset($res['domains']) || !isset($res['lastPage']))
		{
			$error = 'Unknown error';
			return null;
		}

		foreach ($res['domains'] as $domain)
		{
			$list[$domain['domainName']] = [
				'domain_name' => $domain['domainName'],
				'creation_date' => $domain['createDate'],
				'expiration_date' => $domain['expireDate'],
				'status' => null
			];
		}

		$currentPage++;

	} while ($currentPage <= $res['lastPage']);

	return $list;
}