Создать подписку

PUT /webhook-subscriptions

Создает одну или несколько подписок.

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

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

curl -X PUT 'https://tasks.yandex.ru/api/v1/' \
     -H 'Authorization: OAuth PlaceYourRealOAuthToken_Here' \
     -H 'Content-Type: application/json' \
     -d '[{"webhook_url":"https://example.com/webhook", "event_type":"ASSIGNMENT_CREATED", "pool_id":"1080020"}]'
import requests

url = "https://tasks.yandex.ru/api/v1/"
headers = {
  'Authorization': 'OAuth PlaceYourRealOAuthToken_Here',
  'Content-Type': 'application/json'
}
payload = [
  {
    "webhook_url": "https://example.com/webhook",
    "event_type": "ASSIGNMENT_CREATED",
    "pool_id": "1080020"
  }
]
response = requests.put(url, headers=headers, json=payload)

print(response.text)
var request = require('request');
var options = {
  'method': 'PUT',
  'url': 'https://tasks.yandex.ru/api/v1/',
  'qs': {},
  'headers': {
    'Authorization': 'OAuth PlaceYourRealOAuthToken_Here',
    'Content-Type': 'application/json'
  },
  'body': JSON.stringify([
    {
      "webhook_url": "https://example.com/webhook",
      "event_type": "ASSIGNMENT_CREATED",
      "pool_id": "1080020"
    }
  ])
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

Заголовки

Заголовок

Описание

Authorization

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

Content-Type

Указывает формат данных (application/json) в передаваемом теле запроса.

Тело и параметры запроса

Пример тела запроса
[
  {
     "webhook_url": "https://example.com/webhook",
     "event_type": "ASSIGNMENT_CREATED",
     "pool_id": "121212"
  },
  {
     "webhook_url": "https://example.com/webhook-1",
     "event_type": "POOL_CLOSED",
     "pool_id": "121212",
     "secret_key": "12345"
  }
]

Параметр

Описание

webhook_url*

string

URL, на который будут приходить уведомления.

event_type*

string

Тип события.

Возможные значения:

  • POOL_CLOSED — пул закрыт.
  • DYNAMIC_OVERLAP_COMPLETED — появилась агрегированная оценка по динамическому перекрытию.
  • ASSIGNMENT_CREATED — задание создано.
  • ASSIGNMENT_SUBMITTED — задание выполнено и ожидает приемки заказчиком.
  • ASSIGNMENT_SKIPPED — задание было взято в работу, но исполнитель пропустил его и к нему уже не вернется.
  • ASSIGNMENT_EXPIRED — задание было взято в работу, но исполнитель не успел выполнить его за отведенное время или отказался от него до конца срока.
  • ASSIGNMENT_APPROVED — задание выполнено исполнителем и подтверждено заказчиком.
  • ASSIGNMENT_REJECTED — задание выполнено исполнителем, но отклонено заказчиком.

pool_id*

string

Идентификатор пула, для которого создается подписка.

secret_key

string

Секретный ключ, который позволяет проверить, что входящие запросы были отправлены с помощью API Яндекс Заданий. Подробнее см. в разделе Аутентификация событий.

Ответ

Содержит информацию о созданных подписках в формате JSON. Каждой подписке присваивается уникальный идентификатор (id) и дата создания (created).

{
  "id": "62ee14ada451956b21388859",
  "created": "2023-01-01T00:00:00.000Z",
  "event_type": "ASSIGNMENT_APPROVED",
  "webhook_url": "https://example.com/webhook",
  "pool_id": "1080020"
}

Параметр

Описание

webhook_url

string

URL, на который будут приходить уведомления.

event_type

string

Тип события.

Возможные значения:

  • POOL_CLOSED — пул закрыт.
  • DYNAMIC_OVERLAP_COMPLETED — появилась агрегированная оценка по динамическому перекрытию.
  • ASSIGNMENT_CREATED — задание создано.
  • ASSIGNMENT_SUBMITTED — задание выполнено и ожидает приемки заказчиком.
  • ASSIGNMENT_SKIPPED — задание было взято в работу, но исполнитель пропустил его и к нему уже не вернется.
  • ASSIGNMENT_EXPIRED — задание было взято в работу, но исполнитель не успел выполнить его за отведенное время или отказался от него до конца срока.
  • ASSIGNMENT_APPROVED — задание выполнено исполнителем и подтверждено заказчиком.
  • ASSIGNMENT_REJECTED — задание выполнено исполнителем, но отклонено заказчиком.

pool_id

string

Идентификатор пула, для которого создана подписка.

id

string

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

created

string

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

{
  "items": [
    "0": {
      "webhook_url": "https://example.com/webhook",
      "event_type": "ASSIGNMENT_CREATED",
      "pool_id": "121212",
      "id": "webhook-subscription-1",
      "created": "2020-02-03T15:00:00"
    },
    "1": {
      "webhook_url": "https://example.com/webhook-1",
      "event_type": "POOL_CLOSED",
      "pool_id": "121212",
      "id": "webhook-subscription-2",
      "created": "2020-02-03T15:00:00"
    }
  ],
  "validation_errors": {}
}

Параметр

Описание

items[]

array of objects

Массив объектов с информацией о созданных подписках.

<n>

object

Порядковый номер подписки в запросе на создание (начиная с 0).

webhook_url

string

URL, на который будут приходить уведомления.

event_type

string

Тип события.

Возможные значения:

  • POOL_CLOSED — пул закрыт.
  • DYNAMIC_OVERLAP_COMPLETED — появилась агрегированная оценка по динамическому перекрытию.
  • ASSIGNMENT_CREATED — задание создано.
  • ASSIGNMENT_SUBMITTED — задание выполнено и ожидает приемки заказчиком.
  • ASSIGNMENT_SKIPPED — задание было взято в работу, но исполнитель пропустил его и к нему уже не вернется.
  • ASSIGNMENT_EXPIRED — задание было взято в работу, но исполнитель не успел выполнить его за отведенное время или отказался от него до конца срока.
  • ASSIGNMENT_APPROVED — задание выполнено исполнителем и подтверждено заказчиком.
  • ASSIGNMENT_REJECTED — задание выполнено исполнителем, но отклонено заказчиком.

pool_id

string

Идентификатор пула, для которого создана подписка.

id

string

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

created

string

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

validation_errors

object

Объект с валидационными ошибками.

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