Получить сведения о проекте

GET /projects/{id}

Получает свойства проекта, ID которого указан в запросе.

Можно получить идентификатор ({id}) из списка проектов.

Примеры запросов

curl -X GET 'https://tasks.yandex.ru/api/v1/projects/83859' \
     -H 'Authorization: OAuth PlaceYourRealOAuthToken_Here'
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-параметры

Параметр

Описание

id*

string

Идентификатор проекта.

Заголовки

Заголовок

Описание

Authorization

API-токен для авторизации аккаунта. В качестве префикса добавьте OAuth.

Ответ

Содержит свойства проекта в формате 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_description

    string

    Описание проекта. Его увидят исполнители.

    public_instructions

    string

    Инструкция по выполнению заданий. В инструкции можно использовать любую HTML-разметку.

    private_comment

    string

    Комментарий, доступный только заказчику.

    task_spec*

    object

    Параметры входных и выходных данных, интерфейса заданий.

    task_spec.input_spec*

    object

    Параметры входных данных заданий. Полный список параметров приведен в таблице Входные и выходные данные.

    task_spec.output_spec*

    object

    Параметры выходных данных — полей ввода. Полный список параметров приведен в таблице Входные и выходные данные.

    task_spec.view_spec

    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.

    assignments_issuing_view_config

    string (обязательный при условии)

    Обязателен, если assignments_issuing_type=MAP_SELECTOR.

    Настройки отображения пешеходных заданий. Полный список параметров приведен в таблице Настройки отображения пешеходных заданий.

    assignments_automerge_enabled

    boolean

    Разрешить слияние идентичных заданий в проекте. По умолчанию значение false.

    max_active_assignments_count

    integer

    Количество страниц, которые исполнитель может одновременно выполнять (статус «Активно»).

    metadata

    object

    Метаданные проекта.

    sensitive

    boolean

    Наличие приватных данных в заданиях.

    quality_control

    object

    Блок контроля качества.

    quality_control.configs[]

    array of objects

    Наборы правил

    localization_config

    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»).

    required

    boolean

    Обязательность объекта или поля ввода. По умолчанию значение true.

    hidden

    boolean

    Скрыть ли от исполнителя поле с входным значением. По умолчанию значение false.

    Для выходных данных всегда false.

    min_value

    float

    Минимальное значение числа.

    max_value

    float

    Максимальное значение числа.

    allowed_values[]

    array of strings, array of integers, array of floats

    Допустимые значения.

    Задание допустимых значений повышает качество агрегации результатов.

    min_length

    integer

    Минимальная длина строки.

    max_length

    integer

    Максимальная длина строки.

    current_location

    string

    Только в выходных данных типа coordinates: заполнение поля текущими координатами исполнителя (true/false). Используется в заданиях для мобильного приложения.

    Интерфейс задания ('view_spec')

    Параметр

    Описание

    markup

    string (обязательный при условии)

    Обязателен, если type=classic.

    HTML-разметка задания.

    Подробнее см. в разделе Блок HTML.

    script

    string (обязательный при условии)

    Обязателен, если type=classic.

    JS-код задания.

    Подробнее см. в разделе Блок JS.

    styles

    string (обязательный при условии)

    Обязателен, если type=classic.

    CSS-стили задания.

    Подробнее см. в разделе Блок CSS.

    settings*

    object

    Необходимость отображения стандартных элементов интерфейса в задании. Полный список параметров приведен в таблице Настройки отображения стандартных элементов.

    config

    array of objects

    Конфигурация для конструктора шаблонов.

    lock

    object

    Обязателен, если type=tb.

    Версии компонентов конструктора шаблонов, используемые для создания интерфейса заданий проекта.

    assets

    object

    Подключенные файлы:

    • CSS-стили;
    • JavaScript-библиотеки;
    • ресурсы Яндекс Заданий с префиксом $TOLOKA_ASSETS.

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

    assets.script_urls[]

    array of strings

    Ссылки на JavaScript-библиотеки и ресурсы Яндекс Заданий.

    Ресурсы Яндекс Заданий:

    Интерфейс разметки картинок нужно подключать только вместе с хелперами Handlebars. Порядок подключения важен:

    "script_urls": [
      "$TOLOKA_ASSETS/js/toloka-handlebars-templates.js",
      "$TOLOKA_ASSETS/js/image-annotation.js"
    ]
    

    assets.style_urls[]

    array of strings

    Ссылки на CSS-библиотеки.

    type

    string

    Тип редактора, используемого для создания интерфейса проекта:

    • classic — редактор HTML/CSS/JS, который позволяет использовать элементы HTML, CSS и JavaScript для создания интерфейса заданий.
    • tb — конструктор шаблонов, который позволяет использовать элементы с синтаксисом JSON для создания интерфейса заданий.

    В зависимости от типа редактора используются параметры:

    • assets, markup, script и styles, если значение равно classic.
    • config, lock, если значение равно tb.

    localizationConfig

    object

    Конфигурация редактора.

    В конструкторе шаблонов добавьте в это поле ключи для свойств текстовых компонентов, которые вам нужно перевести на другие языки.

    Подробнее см. в разделе Перевод интерфейса задания.

    localizationConfig.keys

    string

    Ключи на исходном языке.

    Подробнее см. в разделе Перевод интерфейса задания.

    Настройки отображения стандартных элементов ('settings')

    Параметр

    Описание

    showTimer

    boolean

    Показывать оставшееся время. По умолчанию значение true.

    showTitle

    boolean

    Показывать название проекта в заголовке заданий. По умолчанию значение true.

    showInstructions

    boolean

    Показывать кнопку Инструкция. По умолчанию значение true.

    showFullscreen

    boolean

    Показывать кнопку На весь экран. По умолчанию значение true.

    showSubmit

    boolean

    Показывать кнопку Отправить. По умолчанию значение true.

    showSkip

    boolean

    Показывать кнопку Пропустить. По умолчанию значение true.

    showFinish

    boolean

    Показывать кнопку Выйти. По умолчанию значение true.

    showMessage

    boolean

    Показывать кнопку Написать заказчику. По умолчанию значение true.

    showReward

    boolean

    Показывать цену за страницу. По умолчанию значение true.

    Настройки отображения пешеходных заданий ('assignments_issuing_view_config')

    Параметр

    Описание

    title_template*

    string (обязательный при условии)

    Обязателен, если assignments_issuing_type=MAP_SELECTOR.

    Название задания. Исполнители увидят его в режиме предпросмотра задания.

    description_template*

    string (обязательный при условии)

    Обязателен, если assignments_issuing_type=MAP_SELECTOR.

    Описание задания. Исполнители увидят его в режиме предпросмотра задания.

    map_provider

    string

    Параметр можно использовать, если в проекте "assignments_issuing_type": "MAP_SELECTOR".

    Провайдер карт для выполнения задач:

    • GOOGLE — Карты Google.
    • YANDEX — Яндекс Карты.

    Если параметр не задан, то выбор карты определяется исполнителем.

    Переводы на другие языки ('localization_config')

    Параметр

    Описание

    default_language

    string

    Исходный язык, на котором заполнены:

    • public_name* (string — название проекта. Его увидят исполнители)
    • public_description* (string — описание проекта. Его увидят исполнители)
    • public_instructions (string — инструкция по выполнению заданий. В инструкции можно использовать любую HTML-разметку)

    additional_languages[]

    array of objects

    Массив языков перевода. Полный список параметров приведен в таблице Языки переводов.

    Языки переводов ('additional_languages')

    Параметр

    Описание

    language

    string

    Язык перевода.

    public_name

    object

    Перевод названия проекта.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    public_description

    object

    Перевод описания проекта.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    public_instructions

    object

    Перевод инструкции по выполнению заданий.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    tb_view_spec

    object

    Перевод интерфейса задания.

    tb_view_spec.keys[]

    array of objects

    Ключи с переводом элементов интерфейса задания.

    Источник перевода:

    • REQUESTER — заказчик сам установил значение.

    message_on_unknown_solution

    object

    Подсказка для задания (используется для обучающих заданий).

  • параметры, которые присваиваются автоматически:

    Параметр

    Описание

    id

    string

    Идентификатор проекта (присваивается автоматически).

    status

    string

    Статус проекта:

    • ACTIVE — активный;
    • ARCHIVED — архивный.

    created

    string

    Дата и время создания проекта по UTC в формате ISO 8601: YYYY-MM-DDThh:mm:ss[.sss].

    owner

    object

    Параметры заказчика, который создал проект.

    owner.id

    string

    Идентификатор заказчика.

    owner.myself

    boolean

    Проверяет, кому принадлежит объект:

    • true — пользователю, чей OAuth-токен указан в запросе;
    • false — другому аккаунту (сотруднику или владельцу).

    owner. company_id

    string

    Идентификатор компании заказчика.

Обязательный параметр