[Документация Yandex Cloud](../../index.md) > [Yandex Smart Web Security](../index.md) > [Пошаговые инструкции](index.md) > Шаблоны ответов > Создать шаблон

# Создать шаблон страницы ответа

{% list tabs group=instructions %}

- Консоль управления {#console}

  1. В [консоли управления](https://console.yandex.cloud) выберите [каталог](../../resource-manager/concepts/resources-hierarchy.md#folder), в котором вы хотите создать шаблон.
  1. Перейдите в сервис **Smart Web Security**.
  1. На панели слева выберите **Шаблоны ответов** и нажмите кнопку **Создать шаблон**.
  1. Введите **Имя страницы** — имя файла, который будет возвращаться в ответ на запрос клиента.

     Имя может быть от 1 до 50 символов, содержать строчные и заглавные буквы латинского алфавита, цифры, дефисы, нижние подчеркивания и точки. Первый символ — буква или цифра.

  1. (Опционально) Введите описание шаблона.
  1. Выберите **Код ответа** — один из стандартных [HTTP-кодов ответов](https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml), для которого клиенту будет возвращена страница по вашему шаблону.
  1. Выберите **Формат ответа**: **HTML**, **JSON**, **XML** или **Custom**.

     Каждому из форматов будет соответствовать свой HTTP-заголовок [Content-Type](https://www.rfc-editor.org/rfc/rfc9110.html#name-content-type): `text/html`, `application/json`, `application/xml`. Чтобы указать произвольный заголовок, выберите **Custom**.

  1. Для формата **Custom** введите **Content-Type**. Например, `text/plain`.

  1. (Опционально) Чтобы добавить к ответу HTTP-заголовок, нажмите **Добавить заголовок ответа** и укажите параметры:
     
     * **Ключ** — название HTTP-заголовка, например: `User-Agent`, `Host`.
     * **Значение**, например: `Mozilla/5.0 (...)`, `example.com`.
  
     Можно добавить не более 10 заголовков. Заголовки **Content-Type** и **Content-Length** добавить нельзя, задать **Content-Type** можно в отдельном поле для формата **Custom**.

  1. Введите **Тело ответа** — содержимое страницы, которое будет возвращено клиенту. Объем ответа должен быть не более `2 КБ` (примерно 2000 символов в кодировке UTF-8).
  
     Содержимое ответа должно соответствовать выбранному формату ответа, например:
     
     * **HTML**
     
         ```html
         <!doctype html>
         <html lang="ru">
         <head><meta charset="utf-8"><title>403 Forbidden</title></head>
         <body><h1>403 Forbidden</h1><p>Доступ ограничен.</p></body>
         </html>
         ```
     
     * **JSON**
     
         ```json
         {
         "error": {
             "code": 403,
             "message": "Доступ ограничен.",
             "details": "Недостаточно прав для выполнения операции."
         }
         }
         ```
          
     * **XML**
         
         ```xml
         <?xml version="1.0" encoding="UTF-8"?>
         <error>
         <code>403</code>
         <message>Доступ ограничен.</message>
         <details>Недостаточно прав для выполнения операции.</details>
         </error>
         ```

  1. (Опционально) Добавьте в тело ответа дополнительные параметры, выбрав нужный пресет: **ID запроса**, **IP-адрес клиента**, **Время запроса**.

     Эти данные могут быть полезны, например, при обращении клиента в поддержку.

     Пример страницы с дополнительными параметрами:
     
     ```html
     <html>
     <head><title>403 Forbidden</title></head>
     <body>
     <h1>403 Forbidden</h1>
     <p>Доступ ограничен. Если доступ должен быть, передайте в поддержку следующие данные:</p>
     <p>Идентификатор: %unique_key%</p>
     <p>IP-адрес: %client_ip%</p>
     <p>Время запроса: %request_time%</p>
     <p>Контакты: security@example.com</p>
     </body>
     </html>
     ```

  1. Чтобы увидеть итоговую страницу на стороне клиента, вверху справа нажмите **Предпросмотр**.
  1. Нажмите кнопку **Создать**.

{% endlist %}

#### Полезные ссылки {#see-also}

* [Добавить шаблон страницы ответа к профилю или правилу](template-attach.md)
* [Шаблоны страниц ответов](../concepts/response-templates.md)