Редактировать проект
PUT /projects/{id}
Редактирует проект.
В теле запроса укажите все параметры обновляемого проекта. Идентификатор проекта можно узнать из списка проектов.
Примеры запросов
curl -X PUT 'https://tasks.yandex.ru/api/v1/projects/118252' \
-H 'Content-Type: application/json' \
-H 'Authorization: OAuth PlaceYourRealOAuthToken_Here' \
-d '{"id":"118252","public_name":"Elephant color (advanced)","public_description":"What color is the elephant in the picture?","public_instructions":"<p>Look at the picture and decide what color the elephant is.</p> You can zoom in or out using the buttons:</p> <img src=\"disc/img1.png>\"","private_comment":"My first project","task_spec":{"input_spec":{"image":{"type":"URL","required":true,"hidden":false}},"output_spec":{"result":{"type":"string","required":true,"hidden":false}},"view_spec":{"assets":{"script_urls":["library1.js","library2.js"]},"markup":"<task interface code>","script":"<JavaScript code>","styles":"<CSS code>","settings":{"showSkip":true,"showTimer":true,"showTitle":true,"showSubmit":true,"showFullscreen":true,"showInstructions":true,"showFinish":true,"showMessage":true,"showReward":true}}},"assignments_issuing_type":"AUTOMATED","assignments_automerge_enabled":false,"max_active_assignments_count":15,"quality_control":{"configs":[{"collector_config":{"type":"SKIPPED_IN_ROW_ASSIGNMENTS"},"rules":[{"conditions":[{"key":"skipped_in_row_count","operator":"GTE","value":10}],"action":{"type":"REJECT_ALL_ASSIGNMENTS","parameters":{"public_comment":"Skipped more than 10 task suites in a row"}}}]}]},"localization_config":{"default_language":"EN"}}'
import requests
url = "https://tasks.yandex.ru/api/v1/projects/83859"
headers = {
'Authorization': 'OAuth PlaceYourRealOAuthToken_Here'
}
response = requests.get(url, headers=headers)
print(response.text)
var request = require('request');
var options = {
'method': 'GET',
'url': 'https://tasks.yandex.ru/api/v1/projects/83859',
'qs': {},
'headers': {
'Authorization': 'OAuth PlaceYourRealOAuthToken_Here'
}
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});
Path-параметры
|
Параметр |
Описание |
|
|
string Идентификатор проекта. |
Заголовки
|
Заголовок |
Описание |
|
|
API-токен для авторизации аккаунта. В качестве префикса добавьте |
|
|
Указывает формат данных ( |
Ответ
Содержит обновленную информацию о проекте в формате JSON.
Пример ответа
{
"id": "83859",
"public_name": "Elephant color",
"public_description": "What color is the elephant in the picture?",
"public_instructions": "<p>Look at the picture and decide what color the elephant is.</p> You can zoom in or out using the buttons:</p> <img src=\"disc/img1.png>\"",
"private_comment": "My first project",
"task_spec": {
"input_spec": {
"image": {
"type": "URL",
"required": true,
"hidden": false
}
},
"output_spec": {
"result": {
"type": "string",
"required": true,
"hidden": false
}
},
"view_spec": {
"assets": {
"script_urls": [
"library1.js",
"library2.js"
]
},
"markup": "<task interface code>",
"script": "<JavaScript code>",
"styles": "<CSS code>",
"settings": {
"showSkip": true,
"showTimer": true,
"showTitle": true,
"showSubmit": true,
"showFullscreen": true,
"showInstructions": true,
"showFinish": true,
"showMessage": true,
"showReward": true
}
}
},
"assignments_issuing_type": "AUTOMATED",
"assignments_automerge_enabled": false,
"max_active_assignments_count": 15,
"quality_control": {
"configs": [
{
"collector_config": {
"type": "SKIPPED_IN_ROW_ASSIGNMENTS"
},
"rules": [
{
"conditions": [
{
"key": "skipped_in_row_count",
"operator": "GTE",
"value": 10
}
],
"action": {
"type": "REJECT_ALL_ASSIGNMENTS",
"parameters": {
"public_comment": "Skipped more than 10 task suites in a row"
}
}
}
]
}
]
},
"localization_config": {
"default_language": "EN"
},
"owner": {
"id": "6c6e20dc86cca2ae787afcb2629de162",
"myself": true
},
"status": "ACTIVE",
"created": "2022-01-22T07:50:14.210"
}
Включает:
-
параметры, которые используются при создании проекта:
Параметр
Описание
public_name*string
Название проекта. Его увидят исполнители.
public_descriptionstring
Описание проекта. Его увидят исполнители.
public_instructionsstring
Инструкция по выполнению заданий. В инструкции можно использовать любую HTML-разметку.
private_commentstring
Комментарий, доступный только заказчику.
task_spec*object
Параметры входных и выходных данных, интерфейса заданий.
object
Параметры входных данных заданий. Полный список параметров приведен в таблице Входные и выходные данные.
object
Параметры выходных данных — полей ввода. Полный список параметров приведен в таблице Входные и выходные данные.
object
Описание интерфейса задания. Полный список параметров приведен в таблице Интерфейс задания.
assignments_issuing_type*string
Способ выдачи заданий:
-
AUTOMATED— исполнителю выдается страница заданий из пула. Вы можете настроить, в каком порядке выдаются страницы заданий. -
MAP_SELECTOR— исполнитель выбирает страницу заданий на карте. При выборе способаMAP_SELECTORукажите текст для отображения в названии и описании карты в ключеassignments_issuing_view_config:"assignments_issuing_view_config": { "title_template": "_название_задания_", "description_template": "_краткое_описание_задания_", "map_provider": "YANDEX" }По умолчанию значение
AUTOMATED.
string (обязательный при условии)
Обязателен, если
assignments_issuing_type=MAP_SELECTOR.Настройки отображения пешеходных заданий. Полный список параметров приведен в таблице Настройки отображения пешеходных заданий.
assignments_automerge_enabledboolean
Разрешить слияние идентичных заданий в проекте. По умолчанию значение
false.max_active_assignments_countinteger
Количество страниц, которые исполнитель может одновременно выполнять (статус «Активно»).
metadataobject
Метаданные проекта.
sensitiveboolean
Наличие приватных данных в заданиях.
quality_controlobject
Блок контроля качества.
quality_control.configs[]array of objects
object
Блок перевода на другие языки. Полный список параметров приведен в таблице Переводы на другие языки.
Подробнее о переводе см. в документе Перевод на другие языки.
Входные и выходные данные ('input_spec' и 'output_spec')
Параметры
input_specиoutput_specсодержат JSON со свойствами входных данных и параметрами для валидации ответов. В них нужно определить тип данных (строка, число, url и т.д.) и указать параметры для валидации (например, длина строки).Параметр
Описание
<идентификатор>*object
- Для входных данных — идентификатор объекта для отображения в задании и его свойства.
- Для выходных данных — идентификатор поля ввода ответа и параметры для валидации ответа.
type*string
Тип данных:
url— URL картинки, страницы и т. д.;boolean— логический тип данных (true/false);integer— целое число;string— строка;float— число с плавающей точкой;json— объект JSON;file— файл (только для выходных данных);coordinates— географические координаты (например, «53.910236, 27.531110»).
requiredboolean
Обязательность объекта или поля ввода. По умолчанию значение
true.hiddenboolean
Скрыть ли от исполнителя поле с входным значением. По умолчанию значение
false.Для выходных данных всегда
false.min_valuefloat
Минимальное значение числа.
max_valuefloat
Максимальное значение числа.
allowed_values[]array of strings, array of integers, array of floats
Допустимые значения.
Задание допустимых значений повышает качество агрегации результатов.
min_lengthinteger
Минимальная длина строки.
max_lengthinteger
Максимальная длина строки.
current_locationstring
Только в выходных данных типа
coordinates: заполнение поля текущими координатами исполнителя (true/false). Используется в заданиях для мобильного приложения.Интерфейс задания ('view_spec')
Параметр
Описание
markupstring (обязательный при условии)
Обязателен, если
type=classic.HTML-разметка задания.
Подробнее см. в разделе Блок HTML.
scriptstring (обязательный при условии)
Обязателен, если
type=classic.JS-код задания.
Подробнее см. в разделе Блок JS.
stylesstring (обязательный при условии)
Обязателен, если
type=classic.CSS-стили задания.
Подробнее см. в разделе Блок CSS.
object
Необходимость отображения стандартных элементов интерфейса в задании. Полный список параметров приведен в таблице Настройки отображения стандартных элементов.
configarray of objects
Конфигурация для конструктора шаблонов.
lockobject
Обязателен, если
type=tb.Версии компонентов конструктора шаблонов, используемые для создания интерфейса заданий проекта.
assetsobject
Подключенные файлы:
- CSS-стили;
- JavaScript-библиотеки;
- ресурсы Яндекс Заданий с префиксом
$TOLOKA_ASSETS.
Добавляйте элементы в том порядке, в котором они должны подключаться при запуске интерфейса задания.
assets.script_urls[]array of strings
Ссылки на JavaScript-библиотеки и ресурсы Яндекс Заданий.
Ресурсы Яндекс Заданий:
$TOLOKA_ASSETS/js/toloka-handlebars-templates.js— хелперы Handlebars (см. описание на сайте шаблонизатора);$TOLOKA_ASSETS/js/image-annotation.js— интерфейс разметки картинок (см. в разделе Картинка с возможностью выделения областей).
Интерфейс разметки картинок нужно подключать только вместе с хелперами Handlebars. Порядок подключения важен:
"script_urls": [ "$TOLOKA_ASSETS/js/toloka-handlebars-templates.js", "$TOLOKA_ASSETS/js/image-annotation.js" ]assets.style_urls[]array of strings
Ссылки на CSS-библиотеки.
typestring
Тип редактора, используемого для создания интерфейса проекта:
classic— редактор HTML/CSS/JS, который позволяет использовать элементы HTML, CSS и JavaScript для создания интерфейса заданий.tb— конструктор шаблонов, который позволяет использовать элементы с синтаксисом JSON для создания интерфейса заданий.
В зависимости от типа редактора используются параметры:
assets,markup,scriptиstyles, если значение равноclassic.config,lock, если значение равноtb.
localizationConfigobject
Конфигурация редактора.
В конструкторе шаблонов добавьте в это поле ключи для свойств текстовых компонентов, которые вам нужно перевести на другие языки.
Подробнее см. в разделе Перевод интерфейса задания.
localizationConfig.keysstring
Ключи на исходном языке.
Подробнее см. в разделе Перевод интерфейса задания.
Настройки отображения стандартных элементов ('settings')
Параметр
Описание
showTimerboolean
Показывать оставшееся время. По умолчанию значение
true.showTitleboolean
Показывать название проекта в заголовке заданий. По умолчанию значение
true.showInstructionsboolean
Показывать кнопку Инструкция. По умолчанию значение
true.showFullscreenboolean
Показывать кнопку На весь экран. По умолчанию значение
true.showSubmitboolean
Показывать кнопку Отправить. По умолчанию значение
true.showSkipboolean
Показывать кнопку Пропустить. По умолчанию значение
true.showFinishboolean
Показывать кнопку Выйти. По умолчанию значение
true.showMessageboolean
Показывать кнопку Написать заказчику. По умолчанию значение
true.showRewardboolean
Показывать цену за страницу. По умолчанию значение
true.Настройки отображения пешеходных заданий ('assignments_issuing_view_config')
Параметр
Описание
title_template*string (обязательный при условии)
Обязателен, если
assignments_issuing_type=MAP_SELECTOR.Название задания. Исполнители увидят его в режиме предпросмотра задания.
description_template*string (обязательный при условии)
Обязателен, если
assignments_issuing_type=MAP_SELECTOR.Описание задания. Исполнители увидят его в режиме предпросмотра задания.
map_providerstring
Параметр можно использовать, если в проекте
"assignments_issuing_type": "MAP_SELECTOR".Провайдер карт для выполнения задач:
GOOGLE— Карты Google.YANDEX— Яндекс Карты.
Если параметр не задан, то выбор карты определяется исполнителем.
Переводы на другие языки ('localization_config')
Параметр
Описание
default_languagestring
Исходный язык, на котором заполнены:
public_name* (string — название проекта. Его увидят исполнители)public_description* (string — описание проекта. Его увидят исполнители)public_instructions(string — инструкция по выполнению заданий. В инструкции можно использовать любую HTML-разметку)
array of objects
Массив языков перевода. Полный список параметров приведен в таблице Языки переводов.
Языки переводов ('additional_languages')
Параметр
Описание
languagestring
Язык перевода.
public_nameobject
Перевод названия проекта.
Источник перевода:
REQUESTER— заказчик сам установил значение.
public_descriptionobject
Перевод описания проекта.
Источник перевода:
REQUESTER— заказчик сам установил значение.
public_instructionsobject
Перевод инструкции по выполнению заданий.
Источник перевода:
REQUESTER— заказчик сам установил значение.
tb_view_specobject
Перевод интерфейса задания.
tb_view_spec.keys[]array of objects
Ключи с переводом элементов интерфейса задания.
Источник перевода:
REQUESTER— заказчик сам установил значение.
message_on_unknown_solutionobject
Подсказка для задания (используется для обучающих заданий).
-
-
параметры, которые присваиваются автоматически:
Параметр
Описание
idstring
Идентификатор проекта (присваивается автоматически).
statusstring
Статус проекта:
ACTIVE— активный;ARCHIVED— архивный.
createdstring
Дата и время создания проекта по UTC в формате ISO 8601:
YYYY-MM-DDThh:mm:ss[.sss].ownerobject
Параметры заказчика, который создал проект.
owner.idstring
Идентификатор заказчика.
owner.myselfboolean
Проверяет, кому принадлежит объект:
true— пользователю, чей OAuth-токен указан в запросе;false— другому аккаунту (сотруднику или владельцу).
owner. company_idstring
Идентификатор компании заказчика.
Узнайте больше
Обязательный параметр