Перейти к основному содержимому

Описание структуры файла с анкетой

Любую созданную в системе анкету можно как выгрузить в виде текстового файла, так и загрузить обратно. Файл анкеты — обычный текстовый файл в формате JSON (см. описание тут или тут). Используемая кодировка: UTF8.

Если в анкете есть изображения, аудио или видео, она выгружается не одним файлом, а zip-архивом: в нём лежат и json-файл с анкетой, и все медиафайлы. При загрузке архива в нём должен быть ровно один файл с расширением .json.

В файле записывается один объект Questionnaire, содержащий все необходимые свойства анкеты. Каждое свойство объекта состоит из имени (ключ) и значения. При сохранении анкеты из SURVEYSTUDIO имена свойств объектов всегда будут заключены в кавычки, однако если файл будет формироваться сторонним ПО - допускается имена свойств указывать без кавычек. Также, при сохранении из SURVEYSTUDIO, будут заданы значения всех свойств, у которых есть значение; свойства без значения в файл не попадают.

Пример содержимого файла:

{
"Magic": "SS2EQN",
"Version": "2.4",
"Name": "Новая анкета",
"ExportedQuestionnaireFlags": {},
"ExportedSurveyFlags": {},
"Questions": [
{
"OrderIdx": 1,
"Number": 1,
"Text": "Текст вопроса 1",
"ImagePlacement": "Default",
"QuestionType": "SingleChoice",
"ExportedQuestionFlags": {},
"ExportedSurveyFlags": {},
"AnswerList": "Q1 список"
}
],
"AnswerLists": [
{
"Name": "Q1 список",
"Type": "Common",
"AnswerItems": [
{
"OrderIdx": 1,
"Code": 1,
"Text": "Ответ 1",
"ImagePlacement": "Default",
"ExportedFlags": {}
},
{
"OrderIdx": 2,
"Code": 2,
"Text": "Ответ 2",
"ImagePlacement": "Default",
"ExportedFlags": {}
},
{
"OrderIdx": 3,
"Code": 3,
"Text": "Ответ 3",
"ImagePlacement": "Default",
"ExportedFlags": {}
}
]
}
]
}

Два свойства указывают на версию формата и должны присутствовать обязательно:

{
"Magic": "SS2EQN",
"Version": "2.4"
}

Текущая версия формата — 2.4. Файлы, выгруженные прежними версиями сервиса, тоже загружаются.

примечание

Наборы флагов задаются вложенным объектом, у которого каждый флаг — отдельное свойство со значением true или false. Пропущенный в объекте флаг считается выключенным, а пустой объект {} означает, что выключены все флаги. Сами объекты с флагами указывать обязательно.

Полный список свойств объекта Questionnaire и описание их значений​

  • Magic
    Маркер формата файла. Имеет фиксированное значение "SS2EQN".
  • Version
    Версия формата файла. Текущее значение "2.4".
  • Name
    Строка, содержащая имя анкеты. При загрузке, если анкета с таким же именем уже существует - имя будет дополнено числом, чтобы соблюсти требование уникальности.
  • Code
    Целое число, содержащее код анкеты. Может отсутствовать.
  • ExportedQuestionnaireFlags
    Флаги анкеты. Задаются объектом QuestionnaireFlags.
  • ExportedSurveyFlags
    Флаги опроса, общие для всей анкеты. Задаются объектом SurveyFlags. Эти же флаги можно переопределить у отдельного вопроса.
  • MultipleChoiceExportMode
    Режим выгрузки вопросов с множественным выбором в массив данных. Задаётся целым числом:
    • 0 - дихотомический,
    • 1 - категориальный,
    • 2 - альтернативный,
    • 3 - альтернативный, отсутствие ответа кодируется нулём.
  • CommentPlacement
    Расположение комментария относительно вопроса, значение по умолчанию для всех вопросов анкеты. Допустимые значения:
    • Default - по умолчанию, то есть под вопросом,
    • AboveQuestion - над вопросом,
    • UnderQuestion - под вопросом,
    • UnderAnswerOptions - под вариантами ответа.
  • QuestionImageSize
    Предельный размер изображения вопроса, значение по умолчанию для всех вопросов анкеты. Допустимые значения: Original, XS, S, M, L, XL.
  • AnswerImageSize
    Предельный размер изображения варианта ответа, значение по умолчанию для всех вариантов ответа анкеты. Допустимые значения те же.
  • ColumnCodeTemplateSeparator
    Разделитель перед кодом варианта ответа при формировании имён переменных в массиве.
  • RowCodeTemplateSeparator
    Разделитель перед кодом строки при формировании имён переменных в массиве.
  • CycleTemplateSeparator
    Разделитель перед номером цикла при формировании имён переменных в массиве.
  • ScriptButtonText
    Текст кнопки Выполнить скрипт.
  • MainLanguage
    Основной язык анкеты. Задаётся именем языка, см. список языков.
  • DefaultLanguage
    Язык, на котором опрос открывается по умолчанию.
  • SupportedLanguages
    Массив языков, на которые переведена анкета.
  • ScriptPreProcessing
    Скрипт Подготовка.
  • ScriptPostProcessing
    Скрипт Обработка.
  • ScriptBeforeShow
    Глобальный скрипт Перед показом.
  • ScriptAfterAnswer
    Глобальный скрипт После ответа.
  • ScriptClientSide
    Глобальный скрипт Во время показа, исполняемый в браузере во время показа вопроса.
  • ScriptGlobalFunctions
    Глобальные функции, доступные всем скриптам анкеты.
  • ScriptForButton
    Скрипт, который выполняется по кнопке Выполнить скрипт.
  • ScriptCSS
    CSS-стили анкеты.
  • Questions
    Массив вопросов анкеты. Каждый элемент массива представляет из себя объект Question.
  • AnswerLists
    Массив списков вариантов ответов, которые используются в анкете. Каждый элемент массива представляет из себя объект AnswerList.
  • Images
    Массив изображений, которые используются в анкете. Каждый элемент массива представляет из себя объект Image.
  • MediaFiles
    Массив аудио- и видеофайлов, которые используются в анкете. Каждый элемент массива представляет из себя объект MediaFile.
  • QuestionnaireLocalizations
    Массив переводов текстов анкеты. Каждый элемент массива представляет из себя объект QuestionnaireLocalization.

Объект QuestionnaireFlags​

Записывается в свойстве ExportedQuestionnaireFlags анкеты. Каждый флаг - отдельное свойство со значением true или false, пропущенный флаг считается выключенным.

  • MultipleChoiceInCategoricalMode
    Выгружать вопросы с множественным выбором в категориальном режиме.
  • MultipleChoiceInAlternativeFlagsMode
    Выгружать вопросы с множественным выбором в альтернативном режиме.
  • Archive
    Анкета помещена в архив.
  • AllowContractorsSeeLogic
    Показывать всю логику при просмотре анкеты у подрядчика.
  • RequireAuthorization
    Требовать авторизацию для тестового запуска анкеты.
  • DisableHidingOpenValue
    Отключить скрытие полей с открытыми значениями.
  • AddSubstitutionsToTemplates
    Автоматически формировать имена переменных в массиве.
  • GenerateQuestionVariableByTemplate
    Генерировать переменные в скриптах по шаблону вопроса.
  • HideScriptButtonForAnonymous
    Скрывать кнопку Выполнить скрипт для неавторизованных пользователей.
  • RunInNewService
    Запускать опрос в новой веб-дате.

Например, два флага можно задать так:

{
"ExportedQuestionnaireFlags": {
"MultipleChoiceInCategoricalMode": true,
"AddSubstitutionsToTemplates": true
}
}

Объект SurveyFlags​

Записывается в свойстве ExportedSurveyFlags. Встречается дважды: у анкеты - для всего опроса целиком, и у отдельного вопроса.

  • HideGoBackButton
    Скрыть кнопку "Назад".
  • HideGoFirstButton
    Скрыть кнопку "Начало".
  • HideInterruptButton
    Скрыть кнопку "Завершить".
  • HideAnswerCodes
    Скрыть все коды ответов, строк и колонок.
  • HideQuestionNumbers
    Скрыть номера вопросов, а также их количество.
  • HideProgressBar
    Скрыть шкалу заполнения анкеты.
  • HideServiceBranding
    Скрыть на всех экранах опроса нижний блок, содержащий имя клиента и логотип SURVEYSTUDIO.
  • AutoSubmitSingleChoice
    Автоматически переходить к следующему вопросу при выборе ответа в вопросе с единственным выбором.
  • DisableSubmitOnEnter
    Отключить переход далее при нажатии Enter.
  • DisableClipboardPaste
    Запретить вставку текста из буфера обмена.
  • EnableAccessibilityMode
    Адаптировать опрос для людей с ограниченными возможностями.

У вопроса из этого набора учитываются только HideGoBackButton, HideGoFirstButton, HideInterruptButton, AutoSubmitSingleChoice и DisableClipboardPaste, остальные флаги имеют смысл только на уровне анкеты.

Объект Question​

Для каждого вопроса необходимо задать значения полей OrderIdx, Number, Text, QuestionType, ExportedQuestionFlags и ExportedSurveyFlags. Остальные поля можно не указывать.

  • OrderIdx
    Целое число, указывающее порядок вопроса в анкете. Допускаются отрицательные значения. Если несколько вопросов будут иметь одинаковое значение в этом поле, то порядок их загрузки не определён.
  • Number
    Номер вопроса. Целое число, больше или равное нулю. Отрицательные значения не допускаются. Номер вопроса должен быть уникален для всей анкеты.
  • Text
    Текст вопроса. Может содержать HTML-разметку (действуют ограничения на используемые тэги и атрибуты).
  • Comment
    Текст комментария к вопросу. Также как и сам текст вопроса - может содержать HTML-разметку.
  • CommentPlacement
    Расположение комментария относительно вопроса. Допустимые значения см. CommentPlacement у объекта Questionnaire.
  • ClickTestText
    Текст задания. Используется только вопросами типа клик-тест.
  • Image
    Имя изображения, связанного с вопросом. Изображение с указанным именем должно быть в списке Images.
  • ImagePlacement
    Тип расположения изображения относительно текста вопроса. Допустимые значения:
    • Default - значение по умолчанию. Расположение задаётся настройками сервера.
    • Before - над текстом.
    • After - под текстом.
    • Left - слева от текста.
    • Right - справа от текста.

Например:

{
"ImagePlacement": "After"
}
  • ImageSize
    Предельный размер изображения вопроса. Допустимые значения: Default (взять из настроек анкеты), Original, XS, S, M, L, XL.

  • QuestionType
    Тип вопроса. Допустимые значения:

    • Information - информация,
    • WelcomeScreen - приветствие,
    • Text - текстовый,
    • Numeric - числовой,
    • Phone - телефон,
    • Email - email,
    • DateTime - дата и время,
    • Captcha - капча,
    • SingleChoice - единственный выбор,
    • MultipleChoice - множественный выбор,
    • Dropdown_SingleChoice - выпадающий список: единственный выбор,
    • Dropdown_MultipleChoice - выпадающий список: множественный выбор,
    • Ranking - ранжирование,
    • GrouppingAndRanking - группировка с ранжированием,
    • Rating - рейтинг,
    • Slider - слайдер,
    • MaxDiff - шкала максимального различия,
    • SemanticDifferential - семантический дифференциал,
    • Clicker - кликер,
    • ClickTest_Text - клик-тест: текстовый,
    • ClickTest_Image - клик-тест: изображение,
    • Table_Text - таблица: текст,
    • Table_Numeric - таблица: числа,
    • Table_SingleChoice - таблица: единственный выбор,
    • Table_MultipleChoice - таблица: множественный выбор,
    • Table_Dropdown_SingleChoice - таблица: выпадающий список, единственный выбор,
    • Table_Rating - таблица: рейтинг,
    • Table_Slider - таблица: слайдер.
  • ExportedQuestionFlags
    Флаги вопроса. Задаются объектом QuestionFlags.

  • ExportedSurveyFlags
    Флаги опроса, переопределённые для этого вопроса. Задаются объектом SurveyFlags.

  • MultipleChoiceExportMode
    Режим выгрузки этого вопроса, если он с множественным выбором. Допустимые значения см. у объекта Questionnaire.

  • Condition
    Условие показа вопроса.

  • AnswerList
    Имя списка вариантов ответов для вопроса. Список с таким именем должен быть в массиве AnswerLists.

  • RowList
    Имя списка вариантов ответов для строк табличного вопроса. Список с таким именем должен быть в массиве AnswerLists.

  • ColumnList
    Имя списка вариантов ответов для колонок табличного вопроса. Список с таким именем должен быть в массиве AnswerLists.

  • MinAnswerCount
    Минимальное необходимое количество ответов для вопроса с множественным выбором (или для каждой строки табличного вопроса с множественным выбором).

  • MaxAnswerCount
    Максимальное допустимое количество ответов для вопроса с множественным выбором (или для каждой строки табличного вопроса с множественным выбором).

  • ColumnCount
    Количество колонок, которое будет использовано при отображении вопроса с единственным или множественным выбором.

  • TextLineCount
    Количество строк в поле ввода для вопросов с типом ответа Текстовый. Если не указано, считается, что одна.

  • AnswerNumberFrom
    Нижняя граница допустимого числового ответа.

  • AnswerNumberTo
    Верхняя граница допустимого числового ответа.

  • AnswersSumControlTarget
    Целевое число для контроля суммы ответов. Если свойство не задано, контроль суммы выключен.

  • AnswersSumControlMode
    Как сравнивать сумму ответов с целевым числом. Допустимые значения:

    • Exactly - сумма должна быть строго равна целевому числу,
    • AtMost - не более целевого числа,
    • AtLeast - не менее целевого числа.
  • AnswersSumControlUnit
    Единица измерения, в которой считается сумма. Допустимые значения: None, Percent, Pieces, Milliliter, Liter, Gram, Kilogram.

  • AllowedAttachmentsType
    Тип вложения, которое можно прикрепить к вопросу. Допустимые значения:

    • Image - изображения,
    • Document - документы,
    • Audio - аудио,
    • Any - любые поддерживаемые.
  • MinPhotoCount
    Минимальное количество файлов, которые нужно прикрепить к вопросу.

  • MaxPhotoCount
    Максимальное количество файлов, которые можно прикрепить к вопросу.

  • AutoAnswerSec
    Время в секундах, через которое нужно автоматически нажать кнопку Далее.

  • AutoAnswerCode
    Код ответа, который нужно выбрать автоматически в вопросе с выбором, если включён автоответ.

  • MinTimeForAnswerSec
    Минимальное время в секундах, которое респондент должен провести на вопросе.

  • IdleReminderSec
    Интервал бездействия в секундах. Используется только вопросом типа Кликер.

  • Icon
    Значок шкалы для вопроса типа Рейтинг. Допустимые значения: Star, Smile, Heart, ThumbsUp, Numeric, CoinRub, CoinCny, CoinUsd, CoinEur.

  • DefaultValue
    Значение по умолчанию. Используется слайдером и семантическим дифференциалом.

  • Step
    Размер шага. Используется только слайдером.

  • SegmentsCount
    Количество отрезков, на которые слайдер будет разделён подписями.

  • LeftTitle
    Левая подпись шкалы.

  • RightTitle
    Правая подпись шкалы.

  • ImageClickTestRegionVisibility
    Видимость зон в вопросе Клик-тест: изображение. Допустимые значения: Visible, Hover, Hidden.

  • IsOnlyRegionsClickableAtImageClickTest
    true, если в вопросе Клик-тест: изображение кликать можно только по зонам.

  • ClickTestImageMaxRegionClick
    Максимальное количество кликов в одну зону.

  • ClickTestRegions
    Зоны на изображении для вопроса Клик-тест: изображение. Задаются в виде массива объектов ClickTestRegion.

  • ButtonStartTitle
    Текст кнопки начала опроса. Используется только вопросом типа Приветствие.

  • ButtonStartPlacement
    Расположение кнопки начала опроса. Допустимые значения: Left, Center, Right.

  • OutputColumnTemplate
    Шаблон для формирования имён переменных в массиве для вопроса.

  • OutputColumnTemplateOVT
    Шаблон для формирования имён переменных в массиве открытых текстовых полей вопроса.

  • OutputColumnTemplateOVN
    Шаблон для формирования имён переменных в массиве открытых числовых полей вопроса.

  • CategoricalIndexes
    Список индексов (переопределение используемых по умолчанию) для вариантов ответа вопроса при выгрузке в категориальном режиме. Указываются через запятую.

  • ScriptBeforeShow
    Скрипт перед показом вопроса.

  • ScriptAfterAnswer
    Скрипт после ответа на вопрос.

  • ScriptClientSide
    Скрипт, исполняемый в браузере во время показа вопроса.

  • BeforeShowActions
    Действия перед показом вопроса. Задаются в виде массива объектов QuestionAction.

  • AfterAnswerActions
    Действия после ответа на вопрос. Задаются в виде массива объектов QuestionAction.

  • QuestionLocalizations
    Массив переводов текстов вопроса. Каждый элемент массива представляет из себя объект QuestionLocalization.

Объект QuestionFlags​

Записывается в свойстве ExportedQuestionFlags вопроса. Каждый флаг - отдельное свойство со значением true или false, пропущенный флаг считается выключенным.

  • RandomizeAnswers
    Рандомизация вариантов ответа и строк перед показом.
  • RotateAnswers
    Ротация вариантов ответа перед показом.
  • CanSkip
    Необязательный вопрос.
  • CustomValidation
    Проверка ответа скриптами.
  • AllowFractionalNumbers
    Разрешить ввод дробных чисел.
  • SwapRowsAndColumns
    Перевернуть таблицу.
  • VerticalTextInColumnHeaders
    Вертикальный текст в заголовках колонок табличного вопроса.
  • ShowRowsOneByOne
    Показывать строки таблицы по мере ответа.
  • ShowRowsAsCarousel
    Отображать таблицу как карусель.
  • EnableSearchField
    Добавить строку поиска.
  • DisableHidingOpenValue
    Отключить скрытие полей с открытыми значениями.
  • ShowGroupsWithCollapsedView
    Показывать группы в свёрнутом виде.
  • GrouppingAllNotRequired
    Не требовать группировки всех элементов.
  • HighlightTrackBeforeSliderHandle
    Выделять шкалу перед ползунком.
  • HideSelectionMarker
    Скрыть маркер выбора.
  • DisplayMode
    Режим отображения вопроса. В отличие от остальных флагов задаётся не логическим значением, а одним из трёх:
    • Adaptive - адаптивно, макет выбирается по ширине экрана,
    • AlwaysCompact - всегда компактный (мобильный),
    • AlwaysFull - всегда полный (десктопный).
  • ShowAutoAnswerProgress
    Показывать таймеры.
  • UseDatePicker
    Для открытого текстового значения использовать выбор даты.
  • UseTimePicker
    Для открытого текстового значения использовать выбор времени.
  • UseImageFromLoopAnswer
    Брать изображение из связанного варианта ответа при создании цикла.
  • EnableGPS
    Включить запись GPS-координат.
  • EnableGeoCoder
    Включить определение адреса по GPS-координатам.
  • EnableAudioRecording
    Включить запись звука.
  • DisableAudioRecording
    Отключить запись звука.
  • ForceSilentAudioRecording
    Не отображать индикатор записи звука (скрытая запись).
  • EnableFileAttachments
    Разрешить добавление вложений к ответу на вопрос.
  • EnableSignatureAttachment
    Включить возможность добавления подписи к ответу на вопрос (планшеты).
  • AllowEmptySignature
    Не требовать обязательного добавления подписи (планшеты).
  • UseBarcodeScanner1D
    Использовать сканер штрихкодов (EAN, UPC и др.).
  • UseBarcodeScanner2D
    Использовать сканер двухмерных кодов (QR Code, Data Matrix и др.).
  • SkipExport
    Исключить вопрос при выгрузке.
  • KeepExportOV
    Оставить выгрузку открытых значений при исключении выгрузки вопроса.
  • ExportInCategoricalMode
    Выгружать в категориальном режиме.
  • ExportInAlternativeFlagsMode
    Выгружать в альтернативном режиме (для множественного выбора).

Например, два флага можно задать так:

{
"ExportedQuestionFlags": {
"RandomizeAnswers": true,
"CustomValidation": true
}
}

Объект QuestionAction​

  • OrderIdx
    Целое число, указывающее порядок действий в списке. Допускаются отрицательные значения. Если несколько действий будут иметь одинаковое значение в этом поле, то порядок их загрузки не определён.
  • Condition
    Условие, при выполнении которого действие будет запущено. Если условие не задано - действие запускается всегда.
  • ManualInput
    true, если параметры действия введены вручную, а не выбраны из списка.
  • ActionType
    Тип действия. Указывает что необходимо сделать и задаётся одним из возможных значений.

Переходы и состояние вопроса:

  • JumpToQuestion - переход на вопрос,
  • JumpToEnd - завершить интервью,
  • Skip - пропустить вопрос,
  • SkipIfNoVisible - пропустить, если нет видимых вариантов ответа, строк или столбцов,
  • SkipIfVisibleNoMoreThan - пропустить, если видно меньше указанного количества вариантов ответа или строк,
  • SkipIfColumnsVisibleNoMoreThan - пропустить, если видно меньше указанного количества столбцов,
  • Answered - пометить как отвеченный,
  • AnsweredOrSkip - пометить как отвеченный или пропустить,
  • ChooseFirstVisibleAnswer - выбрать первый по порядку ответ, если видно заданное количество ответов, и пометить как отвеченный,
  • ResetAnswers - сбросить состояние вариантов ответа,
  • CopyAnswersFromQuestion - перенести ответы из другого вопроса,
  • LoadAnswersFromContactData - загрузить ответы из данных контакта,
  • FillAnswerFromParameter - заполнить ответ из параметра ссылки,
  • DisableInterviewSave - не сохранять интервью,
  • ReturnError - сообщить об ошибке.

Варианты ответа:

  • HideAll - скрыть все варианты ответа,
  • HideCodes - скрыть указанные варианты ответа,
  • HideOnlyCodes - скрыть только указанные варианты ответа,
  • HideCheckedInQuestion - скрыть варианты ответа, отмеченные в указанном вопросе,
  • HideOnlyCheckedInQuestion - скрыть только варианты ответа, отмеченные в указанном вопросе,
  • HideFromTo - скрыть варианты ответа с кодами в указанном диапазоне,
  • HideAnswersCheckedInQuestion - скрыть варианты ответа с кодами строк с заданными ответами в указанном табличном вопросе,
  • ShowAll - показать все варианты ответа,
  • ShowCodes - показать указанные варианты ответа,
  • ShowOnlyCodes - показать только указанные варианты ответа,
  • ShowCheckedInQuestion - показать варианты ответа, отмеченные в указанном вопросе,
  • ShowOnlyCheckedInQuestion - показать только варианты ответа, отмеченные в указанном вопросе,
  • ShowFromTo - показать варианты ответа с кодами в указанном диапазоне,
  • ShowAnswersCheckedInQuestion - показать варианты ответа с кодами строк с заданными ответами в указанном табличном вопросе,
  • ShowOnlyAnswersCheckedInQuestion - показать только варианты ответа с кодами строк с заданными ответами в указанном табличном вопросе.

Строки табличного вопроса - те же действия с префиксом Rows:

  • RowsHideAll, RowsHideCodes, RowsHideOnlyCodes, RowsHideCheckedInQuestion, RowsHideOnlyCheckedInQuestion, RowsHideFromTo, RowsHideWithAnswersInTable,
  • RowsShowAll, RowsShowCodes, RowsShowOnlyCodes, RowsShowCheckedInQuestion, RowsShowOnlyCheckedInQuestion, RowsShowFromTo, RowsShowWithAnswersInTable, RowsShowOnlyWithAnswersInTable.

Столбцы табличного вопроса - те же действия с префиксом Columns:

  • ColumnsHideAll, ColumnsHideCodes, ColumnsHideOnlyCodes, ColumnsHideCheckedInQuestion, ColumnsHideOnlyCheckedInQuestion, ColumnsHideFromTo,
  • ColumnsShowAll, ColumnsShowCodes, ColumnsShowOnlyCodes, ColumnsShowCheckedInQuestion, ColumnsShowOnlyCheckedInQuestion, ColumnsShowFromTo.

Переменные:

  • SetVariableValue - установить значение переменной,

  • SetVariableValueFromOpenValue - установить значение переменной из открытого ответа указанного вопроса,

  • SetVariableValueFromContactData - установить значение переменной из данных контакта.

  • ActionVarLong1, ActionVarLong2
    Числовые переменные, задающие необходимые параметры для действий.

  • ActionVarTxt1, ActionVarTxt2
    Текстовые переменные, задающие необходимые параметры для действий.

Объект ClickTestRegion​

Зона на изображении в вопросе типа Клик-тест: изображение.

  • Name
    Название зоны.
  • Code
    Код зоны.
  • Type
    Форма зоны. Допустимые значения:
    • Rectangle - прямоугольник,
    • Ellipse - эллипс,
    • Polygon - многоугольник.
  • X, Y
    Координаты левого верхнего угла зоны.
  • Width, Height
    Ширина и высота зоны.
  • Points
    Вершины многоугольника. Заполняется только для зоны типа Polygon.
  • ShowTitleOnHover
    true, если при наведении на зону нужно показывать её название.

Объект AnswerList​

  • Name
    Имя списка вариантов ответов. Должно быть уникальным для анкеты.
  • Type
    Тип списка. Допустимые значения:
    • Common - общий, значение по умолчанию,
    • SemanticDifferential - семантический дифференциал,
    • ClickTestImage - клик-тест: изображение.
  • ColumnCount
    Если задано, то указывает количество колонок, используемое при отображении вопросов с единственным или множественным выбором.
  • AnswerItems
    Элементы списка вариантов ответа. Задаются в виде массива объектов AnswerItem.

Объект AnswerItem​

  • OrderIdx
    Целое число, указывающее порядок вариантов ответа в списке. Допускаются отрицательные значения. Если несколько вариантов ответа будут иметь одинаковое значение в этом поле, то порядок их загрузки не определён.
  • Code
    Код варианта ответа. Внутри одного списка коды вариантов ответа не должны повторяться.
  • Text
    Текст варианта ответа. Допускается использовать html-разметку. Текст может отсутствовать.
  • LeftTitle
    Левая подпись шкалы. Используется семантическим дифференциалом и слайдером.
  • RightTitle
    Правая подпись шкалы.
  • Image
    Имя изображения, связанного с вариантом ответа. Изображение с указанным именем должно быть в списке Images.
  • ImagePlacement
    Тип расположения изображения относительно текста варианта ответа. Допустимые значения см. ImagePlacement у объекта Question.
  • ImageSize
    Предельный размер изображения варианта ответа. Допустимые значения: Default (взять из настроек анкеты), Original, XS, S, M, L, XL.
  • ExportedFlags
    Флаги варианта ответа. Задаются объектом AnswerFlags.
  • GroupCode
    Код варианта ответа, который является заголовком группы для этого варианта. Заголовок группы должен быть в том же списке и иметь флаг GroupHeader.
  • ExportCodeOverride
    Строка, заменяющая код варианта ответа при выгрузке массива.
  • OutputColumnTemplate
    Шаблон для формирования имён переменных в массиве для варианта ответа.
  • OutputColumnTemplateOVT
    Шаблон для формирования имён переменных в массиве открытого текстового поля варианта ответа.
  • OutputColumnTemplateOVN
    Шаблон для формирования имён переменных в массиве открытого числового поля варианта ответа.
  • AnswerListItemLocalizations
    Массив переводов текстов варианта ответа. Каждый элемент массива представляет из себя объект AnswerListItemLocalization.

Объект AnswerFlags​

Записывается в свойстве ExportedFlags варианта ответа. Каждый флаг - отдельное свойство со значением true или false, пропущенный флаг считается выключенным.

  • OpenValueNum
    С открытым значением (число).
  • OpenValueTxt
    С открытым значением (текст).
  • MultilineTxt
    Многострочный текст в открытом значении.
  • AllowFractionalNumbers
    Разрешить ввод дробных чисел.
  • AllowEmptyOpenValue
    Разрешить пустые открытые значения.
  • UseDatePicker
    Использовать выбор даты.
  • UseTimePicker
    Использовать выбор времени.
  • Blocking
    Блокирующий / исключающий.
  • BlockingInTheGroup
    Блокирующий в группе.
  • AlwaysVisible
    Всегда отображается.
  • DisableReordering
    Не подлежит рандомизации / ротации.
  • DisableRepeat
    Запрещено использовать в циклах.
  • GroupHeader
    Заголовок группы.
  • HideGroupHeader
    Скрыть заголовок группы.
  • TableGlobalAnswer
    Общий для всей таблицы.
  • CustomRowValidation
    Проверка ответа скриптами, ответ в строке таблицы не требуется.
  • HideCode
    Не отображать код варианта ответа.
  • HideText
    Не отображать текст варианта ответа.
  • HideInRespondentMode
    Скрывает ответ, строку или колонку таблицы в режиме просмотра респондентом вопроса на планшете.
  • FirstColumnBottom
    Расположить в первой колонке внизу.
  • SkipExport
    Исключить поле при выгрузке.
  • SkipExportOV
    Отключить выгрузку открытого значения.

Объекты локализации​

Переводы текстов хранятся отдельно от самих текстов: у анкеты, у каждого вопроса и у каждого варианта ответа есть свой массив переводов, по одному элементу на язык.

Объект QuestionnaireLocalization — элемент массива QuestionnaireLocalizations у анкеты:

  • Language
    Язык перевода, см. список языков.
  • ScriptButtonText
    Перевод текста кнопки Выполнить скрипт.

Объект QuestionLocalization — элемент массива QuestionLocalizations у вопроса:

  • Language
    Язык перевода.
  • Text
    Перевод текста вопроса.
  • Comment
    Перевод комментария к вопросу.
  • ClickTestText
    Перевод текста задания клик-теста.
  • LeftTitle, RightTitle
    Переводы подписей шкалы.
  • ButtonStartTitle
    Перевод текста кнопки начала опроса. Используется только вопросом типа Приветствие.

Объект AnswerListItemLocalization — элемент массива AnswerListItemLocalizations у варианта ответа:

  • Language
    Язык перевода.
  • Text
    Перевод текста варианта ответа.
  • LeftTitle, RightTitle
    Переводы подписей шкалы.

Список языков​

Язык задаётся строкой с его именем: Russian - русский, English - английский, Ukrainian - украинский, Azerbaijani - азербайджанский, Armenian - армянский, Georgian - грузинский, Kazakh - казахский, Kyrgyz - киргизский, Tajik - таджикский, Turkmen - туркменский, UzbekLatin - узбекский (латиница), UzbekCyrillic - узбекский (кириллица), German - немецкий, Spanish - испанский, French - французский, Italian - итальянский, Portuguese - португальский, Dutch - нидерландский, Swedish - шведский, Hungarian - венгерский, Romanian - румынский, Turkish - турецкий, Arabic - арабский, Persian - персидский, Indonesian - индонезийский, Malay - малайский, Vietnamese - вьетнамский, Thai - тайский, Chinese - китайский, Japanese - японский.

Объект Image​

Если анкета содержит изображения, то она должна выгружаться в zip-файл, в котором будет как json-файл с самой анкетой, так и все файлы с изображениями.

  • Name
    Имя изображения. Должно быть уникально для анкеты. Используется для ссылки на изображение из вопроса или варианта ответа.
  • FileName
    Имя файла с изображением.

Объект MediaFile​

Аудио- и видеофайлы, на которые ссылаются тексты вопросов и вариантов ответа. Как и изображения, они лежат в том же zip-файле, что и json-файл с анкетой.

  • Id
    Числовой идентификатор файла. Используется для ссылки на файл из текста вопроса или варианта ответа.
  • Name
    Имя файла, которое видно в анкете.
  • FileName
    Имя файла с аудио или видео.
  • FileType
    Тип файла. Допустимые значения: Audio, Video.
  • PreviewFileName
    Имя файла с обложкой видео. Если обложки нет, при загрузке она будет создана заново.