user.access
Определить набор прав пользователя
Описание
Метод user.access определяет, обладает ли текущий пользователь хотя бы одним из заданного параметром ACCESS набора прав.
Параметры
ACCESS
array
обязательный
Список кодов доступа, которые нужно проверить.
Форматы кодов:
U<id>— пользователь, напримерU1G<id>— группа пользователей, напримерG2AU— все авторизованные пользователи
Названия кодов получает метод access.name
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"ACCESS": ["G2", "AU"]
}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/user.access
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{
"ACCESS": ["G2", "AU"],
"auth": "**put_access_token_here**"
}' \
https://**put_your_bitrix24_address**/rest/user.access
// This snippet is an ES module: top-level await requires type="module" or a bundler.
// $b24 is an already-initialized SDK instance (see the SDK "Get started" guide).
import { Text } from '@bitrix24/b24jssdk'
import type { B24Frame } from '@bitrix24/b24jssdk'
declare const $b24: B24Frame
try {
const response = await $b24.actions.v2.call.make<boolean>({
method: 'user.access',
params: {
ACCESS: ['G2', 'AU'],
},
requestId: Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
} else {
const result = response.getData()!.result
console.info('Has access:', result)
}
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
<!-- Load the SDK (UMD build); it is exposed as the global B24Js -->
<script src="https://unpkg.com/@bitrix24/b24jssdk@1/dist/umd/index.min.js"></script>
<script>
async function checkUserAccess() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'user.access',
params: {
ACCESS: ['G2', 'AU'],
},
requestId: B24Js.Text.getUuidRfc4122()
})
// The payload is available only on a successful response
if (!response.isSuccess) {
console.error(response.getErrorMessages().join('; '))
return
}
const result = response.getData().result
console.info('Has access:', result)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', checkUserAccess)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.user.access(
access=[
"G2",
"AU",
],
).response
result = bitrix_response.result
print(result)
except BitrixAPIError as error:
print(
"Ошибка Bitrix API",
f"error: {error.error}",
f"error_description: {error.error_description}",
sep="\n",
)
except BitrixSDKException as error:
print(f"Ошибка Bitrix SDK: {error.message}")
except Exception as error:
print(f"Непредвиденная ошибка: {error}")
try {
$response = $b24Service
->core
->call(
'user.access',
[
'ACCESS' => ["G2", "AU"]
]
);
$result = $response
->getResponseData()
->getResult();
if ($result->error()) {
error_log($result->error());
} else {
echo 'Success: ' . print_r($result->data(), true);
}
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error calling user.access: ' . $e->getMessage();
}
BX24.callMethod(
"user.access",
{
"ACCESS": ["G2", "AU"]
},
function(result)
{
if(result.error())
console.error(result.error());
else
console.log(result.data());
}
);
require_once('crest.php');
$result = CRest::call(
'user.access',
[
'ACCESS' => ['G2','AU']
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "user.access", b24.Params{
"ACCESS": []string{"G2", "AU"},
})
if err != nil {
return fmt.Errorf("user.access: %w", err)
}
var ok bool
if err := json.Unmarshal(res.Result, &ok); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println("выполнено:", ok)
Ответ
HTTP-статус: 200
{
"result": true,
"time": {
"start": 1722001311.94644,
"finish": 1722001311.98622,
"duration": 0.0397801399230957,
"processing": 0.000041961669921875,
"date_start": "2024-07-26T13:41:51+00:00",
"date_finish": "2024-07-26T13:41:51+00:00",
"operating": 0
}
}
Возвращаемые данные
result
boolean
Возвращается true, если текущий пользователь обладает хотя бы одним из перечисленных в параметре ACCESS кодов доступа или правами на управление настройками приложений, false — в противном случае
time
time
Информация о времени выполнения запроса

