метод REST
scope: userconsent
userconsent.agreement.text
Получить текст соглашения
Описание
Метод userconsent.agreement.text возвращает текст соглашения.
Параметры
COMPANY_NAME
text
необязательный
Название компании
COMPANY_ADDRESS
text
необязательный
Адрес компании
PURPOSES
text
необязательный
Цель обработки данных
THIRD_PARTIES
text
необязательный
Третьи лица, которым передаются данные
EMAIL
string
необязательный
Адрес электронной почты
Примеры запроса
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":19,"replace":{"button_caption":"Я согласен","fields":{"COMPANY_NAME":"ООО Пример","COMPANY_ADDRESS":"г. Москва, ул. Примерная, д. 1","PURPOSES":"Обработка персональных данных для улучшения сервиса","THIRD_PARTIES":"Партнеры компании для аналитики","EMAIL":"info@example.com"}}}' \
https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/userconsent.agreement.text
curl -X POST \
-H "Content-Type: application/json" \
-H "Accept: application/json" \
-d '{"id":19,"replace":{"button_caption":"Я согласен","fields":{"COMPANY_NAME":"ООО Пример","COMPANY_ADDRESS":"г. Москва, ул. Примерная, д. 1","PURPOSES":"Обработка персональных данных для улучшения сервиса","THIRD_PARTIES":"Партнеры компании для аналитики","EMAIL":"info@example.com"}},"auth":"**put_access_token_here**"}' \
https://**put_your_bitrix24_address**/rest/userconsent.agreement.text
// 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 AgreementTextResult = {
LABEL: string
TEXT: string
}
try {
const response = await $b24.actions.v2.call.make<AgreementTextResult>({
method: 'userconsent.agreement.text',
params: {
id: 19,
replace: {
button_caption: 'I agree',
fields: {
COMPANY_NAME: 'Example LLC',
COMPANY_ADDRESS: '1 Example St, New York, NY',
PURPOSES: 'Processing personal data to improve service',
THIRD_PARTIES: 'Company partners for analytics',
EMAIL: 'info@example.com',
},
},
},
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('Agreement label:', result.LABEL)
console.info('Agreement text:', result.TEXT)
}
} 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 getAgreementText() {
try {
// Initialize the SDK inside a Bitrix24 frame
const $b24 = await B24Js.initializeB24Frame()
const response = await $b24.actions.v2.call.make({
method: 'userconsent.agreement.text',
params: {
id: 19,
replace: {
button_caption: 'I agree',
fields: {
COMPANY_NAME: 'Example LLC',
COMPANY_ADDRESS: '1 Example St, New York, NY',
PURPOSES: 'Processing personal data to improve service',
THIRD_PARTIES: 'Company partners for analytics',
EMAIL: 'info@example.com',
},
},
},
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('Agreement label:', result.LABEL)
console.info('Agreement text:', result.TEXT)
} catch (error) {
// Thrown on transport or SDK failures (AjaxError, SdkError, etc.)
console.error(error)
}
}
document.addEventListener('DOMContentLoaded', getAgreementText)
</script>
from b24pysdk.errors import BitrixAPIError, BitrixSDKException
try:
bitrix_response = client.userconsent.agreement.text(
bitrix_id=19,
replace={
"button_caption": "I agree",
"fields": {
"COMPANY_NAME": "Example LLC",
"COMPANY_ADDRESS": "1 Example St, New York, NY",
"PURPOSES": "Processing personal data to improve service",
"THIRD_PARTIES": "Company partners for analytics",
"EMAIL": "info@example.com",
},
},
).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(
'userconsent.agreement.text',
[
'id' => 19,
'replace' => [
'button_caption' => 'Я согласен',
'fields' => [
'COMPANY_NAME' => 'ООО Пример',
'COMPANY_ADDRESS' => 'г. Москва, ул. Примерная, д. 1',
'PURPOSES' => 'Обработка персональных данных для улучшения сервиса',
'THIRD_PARTIES' => 'Партнеры компании для аналитики',
'EMAIL' => 'info@example.com'
]
]
]
);
$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(
'userconsent.agreement.text',
{
id: 19,
replace: {
button_caption: "Я согласен",
fields: {
COMPANY_NAME: "ООО Пример",
COMPANY_ADDRESS: "г. Москва, ул. Примерная, д. 1",
PURPOSES: "Обработка персональных данных для улучшения сервиса",
THIRD_PARTIES: "Партнеры компании для аналитики",
EMAIL: "info@example.com"
}
}
},
function(result) {
if(result.error()) {
console.error(result.error());
} else {
console.log(result.data());
}
}
);
require_once('crest.php');
$result = CRest::call(
'userconsent.agreement.text',
[
'id' => 19,
'replace' => [
'button_caption' => 'Я согласен',
'fields' => [
'COMPANY_NAME' => 'ООО Пример',
'COMPANY_ADDRESS' => 'г. Москва, ул. Примерная, д. 1',
'PURPOSES' => 'Обработка персональных данных для улучшения сервиса',
'THIRD_PARTIES' => 'Партнеры компании для аналитики',
'EMAIL' => 'info@example.com'
]
]
]
);
echo '<PRE>';
print_r($result);
echo '</PRE>';
// client и ctx уже созданы — см. раздел «SDK для Go»
res, err := client.Core().Call(ctx, "userconsent.agreement.text", b24.Params{
"id": 19,
"replace": b24.Params{
"button_caption": "Я согласен",
"fields": b24.Params{
"COMPANY_NAME": "ООО Пример",
"COMPANY_ADDRESS": "г. Москва, ул. Примерная, д. 1",
"PURPOSES": "Обработка персональных данных для улучшения сервиса",
"THIRD_PARTIES": "Партнеры компании для аналитики",
"EMAIL": "info@example.com",
},
},
})
if err != nil {
return fmt.Errorf("userconsent.agreement.text: %w", err)
}
var item struct {
Label string `json:"LABEL"`
Text string `json:"TEXT"`
}
if err := json.Unmarshal(res.Result, &item); err != nil {
return fmt.Errorf("разбор ответа: %w", err)
}
fmt.Println(item.Label, item.Text)
Ответ
HTTP-статус: 200
{
"result": {
"LABEL": "Нажимая кнопку «Я согласен», я даю свое согласие на обработку моих персональных данных, в соответствии с Федеральным законом от 27.07.2006 года №152-ФЗ «О персональных данных», на условиях и для целей, определенных в Согласии на обработку персональных данных",
"TEXT": "Согласие на обработку персональных данных\n\nНастоящим в соответствии с Федеральным законом № 152-ФЗ «О персональных данных» от 27.07.2006 года свободно, своей волей и в своем интересе выражаю свое безусловное согласие на обработку моих персональных данных , зарегистрированным в соответствии с законодательством РФ по адресу: \n (далее по тексту - Оператор).\n1. Согласие дается на обработку одной, нескольких или всех категорий персональных данных, не являющихся специальными или биометрическими, предоставляемых мною, которые могут включать:\n\n- ООО Пример;\n- г. Москва, ул. Примерная, д. 1;\n- Обработка персональных данных для улучшения сервиса;\n- Партнеры компании для аналитики;\n- info@example.com.\n\n2. Оператор может совершать следующие действия: сбор; запись; систематизация; накопление; хранение; уточнение (обновление, изменение); извлечение; использование; блокирование; удаление; уничтожение. \n\n3. Способы обработки: как с использованием средств автоматизации, так и без их использования.\n\n4. Цель обработки: предоставление мне услуг/работ, включая, направление в мой адрес уведомлений, касающихся предоставляемых услуг/работ, подготовка и направление ответов на мои запросы, направление в мой адрес информации о мероприятиях/товарах/услугах/работах Оператора.\n\n5. В связи с тем, что Оператор может осуществлять обработку моих персональных данных посредством программы для ЭВМ «1С-Битрикс24», я даю свое согласие Оператору на осуществление соответствующего поручения ООО «1С-Битрикс», (ОГРН 5077746476209), зарегистрированному по адресу: 109544, г. Москва, б-р Энтузиастов, д. 2, эт.13, пом. 8-19.\n\n6. Настоящее согласие действует до момента его отзыва путем направления соответствующего уведомления на электронный адрес kalashnikova@bitrix.ru или направления по адресу .\n\n7. В случае отзыва мною согласия на обработку персональных данных Оператор вправе продолжить обработку персональных данных без моего согласия при наличии оснований, предусмотренных Федеральным законом №152-ФЗ «О персональных данных» от 27.07.2006 г."
},
"time": {
"start": 1760611223,
"finish": 1760611223.240694,
"duration": 0.2406940460205078,
"processing": 0,
"date_start": "2025-10-16T13:40:23+03:00",
"date_finish": "2025-10-16T13:40:23+03:00",
"operating_reset_at": 1760611823,
"operating": 0
}
}
Возвращаемые данные
result
array
Корневой элемент ответа
LABEL
string
Заголовок соглашения
TEXT
string
Текст соглашения
time
time
Информация о времени выполнения запроса
Обработка ошибок
HTTP-статус: 400
{
"error":"400",
"error_description":"Parameter `Agreement ID` required."
}
| Код | Описание | Значение |
|---|---|---|
400 |
ERROR_ARGUMENT |
Parameter Agreement ID required |
400 |
ERROR_ARGUMENT |
Agreement with id 999 not found |

