vote.AttachedVote.getAnswerVoted
Получить список проголосовавших за ответ
Описание
Метод vote.AttachedVote.getAnswerVoted возвращает список пользователей, проголосовавших за указанный вариант ответа.
Параметры
1. Через идентификатор прикрепленного опроса
attachId
integer
обязательный
Идентификатор прикрепленного голосования, получить можно методами vote.AttachedVote.get или vote.AttachedVote.getMany
answerId
integer
обязательный
Идентификатор ответа, получить можно методами vote.AttachedVote.get или vote.AttachedVote.getMany
pageNavigation
object
необязательный
Параметры постраничной навигации, например { size: 10, page: 1 }
userForMobileFormat
boolean
необязательный
Формат данных пользователей для мобильных устройств. Значение по умолчанию: false
2. Через элемент с опросом
moduleId
string
обязательный
Идентификатор модуля, возможные значения:
- Im для опроса в чате,
- blog для опроса в ленте
entityType
string
обязательный
Тип объекта, возможные значения:
- Bitrix\\Vote\\Attachment\\ImMessageConnector для опроса в чате,
- Bitrix\\Vote\\Attachment\\BlogPostConnector для опроса в ленте
entityId
integer
обязательный
Идентификатор элемента, возможные значения:
- id сообщения чата с опросом, получить можно методом vote.Integration.Im.send,
- id поста с опросом в ленте, получить можно методом log.blogpost.get
answerId
integer
обязательный
Идентификатор ответа, получить можно методами vote.AttachedVote.get или vote.AttachedVote.getMany
pageNavigation
object
необязательный
Параметры постраничной навигации, например { size: 10, page: 1 }
userForMobileFormat
boolean
необязательный
Формат данных пользователей для мобильных устройств. Значение по умолчанию: false
3. Через подписанный идентификатор
signedAttachId
string
обязательный
Подписанный идентификатор прикрепления, получить можно методом vote.AttachedVote.get, параметр ответа signedAttachId
answerId
integer
обязательный
Идентификатор ответа, получить можно методами vote.AttachedVote.get или vote.AttachedVote.getMany
pageNavigation
object
необязательный
Параметры постраничной навигации, например { size: 10, page: 1 }
userForMobileFormat
boolean
необязательный
Формат данных пользователей для мобильных устройств. Значение по умолчанию: false
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"attachId":**put_attach_id**,"answerId":**put_answer_id**,"pageNavigation":{"pageSize":**put_page_size**,"currentPage":**put_page**},"userForMobileFormat":false}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/vote.AttachedVote.getAnswerVoted
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"attachId":**put_attach_id**,"answerId":**put_answer_id**,"pageNavigation":{"pageSize":**put_page_size**,"currentPage":**put_page**},"userForMobileFormat":false,"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/vote.AttachedVote.getAnswerVoted
// 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
// Shape of the payload returned in result (match the "response handling" section of the page)
type GetAnswerVotedResult = {
items: {
ID: number
NAME: string
IMAGE: string
WORK_POSITION: string
}[]
}
try {
const response = await $b24.actions.v2.call.make<GetAnswerVotedResult>({
method: 'vote.AttachedVote.getAnswerVoted',
params: {
attachId: 1,
answerId: 1,
pageNavigation: {
pageSize: 10,
currentPage: 1,
},
userForMobileFormat: false,
},
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('Voted users:', result.items.length, result.items)
}
} 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 getAnswerVoted() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'vote.AttachedVote.getAnswerVoted',
params: {
attachId: 1,
answerId: 1,
pageNavigation: {
pageSize: 10,
currentPage: 1,
},
userForMobileFormat: false,
},
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('Voted users:', result.items.length, result.items)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getAnswerVoted)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.vote.attached_vote.get_answer_voted(
answer_id=1,
attach_id=1,
page_navigation={
"pageSize": 10,
"currentPage": 1,
},
user_for_mobile_format=False,
).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(
'vote.AttachedVote.getAnswerVoted',
[
'attachId' => **put_attach_id**,
'answerId' => **put_answer_id**,
'pageNavigation' => [
'pageSize' => **put_page_size**,
'currentPage' => **put_page**
],
'userForMobileFormat' => false
]
);
$result = $response
->getResponseData()
->getResult();
echo 'Success: ' . print_r($result, true);
processData($result);
} catch (Throwable $e) {
error_log($e->getMessage());
echo 'Error: ' . $e->getMessage();
}
BX24.callMethod(
"vote.AttachedVote.getAnswerVoted",
{
"attachId": **put_attach_id**,
"answerId": **put_answer_id**,
"pageNavigation": {
"pageSize": **put_page_size**,
"currentPage": **put_page**
},
"userForMobileFormat": false
},
function(result)
{
if(result.error())
{
console.error(result.error());
}
else
{
console.dir(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'vote.AttachedVote.getAnswerVoted',
[
'attachId' => **put_attach_id**,
'answerId' => **put_answer_id**,
'pageNavigation' => [
'pageSize' => **put_page_size**,
'currentPage' => **put_page**
],
'userForMobileFormat' => false
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
Ответ
HTTP-статус: 200
{
"result": {
"items": [
{
"ID": 1,
"NAME": "Саша",
"IMAGE": "https:\/\/your-domain.bitrix24.ru\/b13743910\/resize_cache\/2267\/cec8d72046af30148f6f5b573a3a0aa8\/main\/c7b\/c7bd44b1babaa54438ce1b\/d5fb56b94dc2c3c2c595a4895.jpg",
"WORK_POSITION": ""
}
]
},
"total": 1,
"time": {
"start": 1755076703.233388,
"finish": 1755076703.264925,
"duration": 0.03153705596923828,
"processing": 0.029319047927856445,
"date_start": "2025-08-13T12:18:23+03:00",
"date_finish": "2025-08-13T12:18:23+03:00",
"operating_reset_at": 1755077303,
"operating": 0
}
}
Возвращаемые данные
result
object
Корневой элемент ответа. Содержит массив данных о проголосовавших пользователях, структура описана ниже
total
integer
Общее количество проголосовавших за данный ответ
time
time
Информация о времени выполнения запроса
Обработка ошибок
{
"error": "ATTACH_NOT_FOUND",
"error_description": "Attach not found"
}
| Код | Описание | Значение |
|---|---|---|
100 |
Bitrix\Vote\Attach All parameters in the constructor must have real class type | Не передан или некорректен обязательный параметр. Передайте attachId, signedAttachId либо связку moduleId + entityType + entityId |
ATTACH_NOT_FOUND |
Attach not found | Голосование не найдено |
ATTACH_READ_ACCESS_DENIED |
Attach read access denied | Нет прав для участия в голосовании |

