• Модуль: rest
  • Путь к файлу: ~/bitrix/modules/rest/lib/api/user.php
  • Класс: BitrixRestApiUser
  • Вызов: User::onRestServiceBuildDescription
static function onRestServiceBuildDescription()
{
	$result = array(
		CRestUtil::GLOBAL_SCOPE => array(
			'user.admin' => array(__CLASS__, 'isAdmin'),
			'user.access' => array(__CLASS__, 'hasAccess'),
			'access.name' => array(__CLASS__, 'getAccess'),
		)
	);

	if(ModuleManager::isModuleInstalled('intranet'))
	{
		$result[static::SCOPE_USER] = array(
			'user.fields' => array(__CLASS__, 'getFields'),
			'user.current' => array(__CLASS__, 'userCurrent'),
			'user.get' => array(__CLASS__, 'userGet'),
			'user.search' => array(__CLASS__, 'userGet'),
			'user.add' => array(__CLASS__, 'userAdd'),
			'user.update' => array(__CLASS__, 'userUpdate'),
			'user.online' => array(__CLASS__, 'userOnline'),
			'user.counters' => array(__CLASS__, 'userCounters'),
			CRestUtil::EVENTS => array(
				'OnUserAdd' => array('main', 'OnUserInitialize', array(__CLASS__, 'onUserInitialize')),
			),
		);
		$result[static::SCOPE_USER_BRIEF] = [
			'user.fields' => array(__CLASS__, 'getFields'),
			'user.current' => array(__CLASS__, 'userCurrent'),
			'user.get' => array(__CLASS__, 'userGet'),
			'user.search' => array(__CLASS__, 'userGet'),
			'user.online' => array(__CLASS__, 'userOnline'),
			'user.counters' => array(__CLASS__, 'userCounters'),
			CRestUtil::EVENTS => array(
				'OnUserAdd' => array('main', 'OnUserInitialize', array(__CLASS__, 'onUserInitialize')),
			),
		];
		$result[static::SCOPE_USER_BASIC] = [
			'user.fields' => array(__CLASS__, 'getFields'),
			'user.current' => array(__CLASS__, 'userCurrent'),
			'user.get' => array(__CLASS__, 'userGet'),
			'user.search' => array(__CLASS__, 'userGet'),
			'user.online' => array(__CLASS__, 'userOnline'),
			'user.counters' => array(__CLASS__, 'userCounters'),
			CRestUtil::EVENTS => array(
				'OnUserAdd' => array('main', 'OnUserInitialize', array(__CLASS__, 'onUserInitialize')),
			),
		];
		$result[UserField::SCOPE_USER_USERFIELD] = [
			'user.userfield.add' => [UserField::class, 'addRest'],
			'user.userfield.update' => [UserField::class, 'updateRest'],
			'user.userfield.delete' => [UserField::class, 'deleteRest'],
			'user.userfield.list' => [UserField::class, 'getListRest'],
			'user.userfield.file.get' => [__CLASS__, 'getFile'],
		];
	}

	return $result;
}