Back to top

Рокет Ворк | API

Intro

Рокет Ворк — облачная платформа для быстрой и удобной работы с самозанятыми поставщиками услуг. Далее мы описали API, которое поможет интегрироваться с платформой.

Терминология

Для начала объясним несколько терминов, которые встретите далее:

  • Исполнитель (или Самозанятый) — физическое лицо, работающее на основании Федерального закона и являющееся клиентом платформы

  • Задача — запрос на оказание услуг, доступный для акцепта либо неограниченному, либо ограниченному либо ограниченному кругу исполнителей (в том числе, единственным исполнителем).

  • Компания — компания-клиент платформы, которая выступает заказчиком услуг самозанятых.

  • Сервис (или Платформа) —программный продукт Рокет Ворк.

  • Профиль — учетные данные компании.

Задачи и договоры

Задачи

Задачи — это готовые к заключению и/или заключенные договоры об оказании услуг с самозанятыми-исполнителями. Компания, работающая с самозанятыми по такой системе через Рокет Ворк, может:

  • создавать задачи;

  • изменять уже созданные задачи:

    • передавать в работу исполнителю;
    • подтверждать полное и корректное выполнение задачи;
  • поручать оплату по выполненной задаче;

  • получать информацию о существующей задаче.

Сама задача с точки зрения API является ресурсом со следующими полями:

  • id — уникальный идентификатор;

  • agreement_signing_uri — ссылка для подписания договора исполнителем;

  • agreement_type_id — идентификатор шаблона договора;

  • agreement_uri — ссылка на договор с исполнителем;

  • category — категория (тип) задачи;

  • created_at — дата и время создания;

  • date — дата запланированного выполнения задачи;

  • description — описание задания;

  • execution_comment — комментарии по исполнению задания;

  • fee — предлагаемая стоимость исполнения (в рублях РФ);

  • metadata — дополнительные данные о задаче (например, номер договора, он он подписан на бумаге);

  • paid_at — дата и время оплаты задачи;

  • payment_errors — ошибки, которые возникли во время последней неудачной попытки оплаты по задаче;

  • receipt_uri — ссылка на чек на сайте nalog.ru

  • status — статус задания, один из:

    • draft— «Черновик» (задание создано, ожидает подписания);
    • inwork — «В работе»;
    • completed — «Выполнено» (работа выполнена исполнителем, задание готово к оплате);
    • paying — «Оплачивается»;
    • paid — «Оплачена»;
    • canceled — «Отменена»;
    • error — «Ошибка оплаты»;
  • title — название задачи;

  • executor — данные об исполнителе задания.

Применение

Создать задачу
POST/api/tasks

Example URI

POST /api/tasks
Request
HideShow

POST  /api/tasks

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Body
{
  "category": "development",
  "date": "2021-05-18",
  "description": "Platform development",
  "executor": "+79032702708",
  "title": "Platform development",
  "fee": 2700,
  "metadata": {
    "test": "test"
  },
  "executor_inn": "1234567890"
}
Response  201
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://feilbecker.info",
    "agreement_type_id": 6,
    "agreement_uri": "https://localhost:3000/api/tasks/01716da57e693231b39fd75094096faa3bdbc32ce426ec39692cd71c33bcd61d/agreement",
    "category": "development",
    "created_at": "2021-05-18T13:48:34.200Z",
    "date": "2021-05-18",
    "description": "Platform development",
    "execution_comment": null,
    "fee": "2700.0",
    "id": 1,
    "metadata": {
      "test": "test"
    },
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": false,
    "status": "draft",
    "title": "Platform development",
    "executor": {
      "id": 2,
      "first_name": "Феодора",
      "last_name": "Соловьева",
      "inn": "1234567890",
      "phone": "+79032702708",
      "email": "carlena@reynolds.info",
      "second_name": "Валентиновна",
      "status": "active"
    }
  }
}
Request
HideShow

POST  /api/tasks

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  422
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "errors": [
    "Category can't be blank",
    "Date can't be blank",
    "Title can't be blank",
    "Description can't be blank"
  ]
}

Получить информацию о задаче
GET/api/tasks/{id}

Example URI

GET /api/tasks/2
URI Parameters
HideShow
id
number (required) Example: 2
Request
HideShow

GET  /api/tasks/2

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://gleasonkoepp.ca",
    "agreement_type_id": 8,
    "agreement_uri": "https://localhost:3000/api/tasks/a25f2309d742b5efec73e0126e5e7ce255ae7ffb705b3f78db3ebf203436f265/agreement",
    "category": "Доставка ЕДЫ",
    "created_at": "2021-05-18T13:48:34.384Z",
    "date": "2021-05-18",
    "description": "Довезти заказ до клиента, не сожрав по дороге",
    "execution_comment": null,
    "fee": "100.0",
    "id": 2,
    "metadata": {},
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": true,
    "status": "draft",
    "title": "Доставить ужин",
    "executor": {
      "id": 4,
      "first_name": "Ангелина",
      "last_name": "Ковалева",
      "inn": "1234567890",
      "phone": "+74722229304",
      "email": "lean@gorczany.ca",
      "second_name": "Игоревна",
      "status": "active"
    }
  }
}

Отметить задачу как выполненную
PATCH/api/tasks/{id}/{event}

Example URI

PATCH /api/tasks/3/complete
URI Parameters
HideShow
id
number (required) Example: 3
event
string (required) Example: complete
Request
HideShow

PATCH  /api/tasks/3/complete

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://croninfarrell.us",
    "agreement_type_id": 9,
    "agreement_uri": "https://localhost:3000/api/tasks/442abefc96d4ec1840729a2adf441ea513bc9259e184969c8ede7af5976221ed/agreement",
    "category": "Доставка ЕДЫ",
    "created_at": "2021-05-18T13:48:34.460Z",
    "date": "2021-05-18",
    "description": "Довезти заказ до клиента, не сожрав по дороге",
    "execution_comment": null,
    "fee": "100.0",
    "id": 3,
    "metadata": {},
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": true,
    "status": "completed",
    "title": "Доставить ужин",
    "executor": {
      "id": 5,
      "first_name": "Рада",
      "last_name": "Никитина",
      "inn": "1234567890",
      "phone": "+79157722490",
      "email": "annalisa@kubschuster.info",
      "second_name": "Глебовна",
      "status": "active"
    }
  }
}

Отметить задачу как подписанную
PATCH/api/tasks/{id}/mark_as_signed

Example URI

PATCH /api/tasks/4/mark_as_signed
URI Parameters
HideShow
id
number (required) Example: 4
Request
HideShow

PATCH  /api/tasks/4/mark_as_signed

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://hermann.co.uk",
    "agreement_type_id": 10,
    "agreement_uri": "https://localhost:3000/api/tasks/0f41530153ef8e5706cc7ede71d7224fa39af7468e94aa9f754086548a7ac7e5/agreement",
    "category": "Доставка ЕДЫ",
    "created_at": "2021-05-18T13:48:34.510Z",
    "date": "2021-05-18",
    "description": "Довезти заказ до клиента, не сожрав по дороге",
    "execution_comment": null,
    "fee": "100.0",
    "id": 4,
    "metadata": {},
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": true,
    "status": "inwork",
    "title": "Доставить ужин",
    "executor": {
      "id": 6,
      "first_name": "Евгения",
      "last_name": "Данилова",
      "inn": "1234567890",
      "phone": "+79640973857",
      "email": "daphne.oreilly@ziemevon.com",
      "second_name": "Глебовна",
      "status": "active"
    }
  }
}
Request
HideShow

PATCH  /api/tasks/5/mark_as_signed

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Body
{
  "signed_at": "2021-01-12",
  "metadata": {
    "legal": {
      "id": "12345"
    }
  }
}
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://okunevamayert.us",
    "agreement_type_id": 11,
    "agreement_uri": "https://localhost:3000/api/tasks/46f8a3cc59f5d6b9d38809a8c9aa81cd8a920f55688ab9d642b4f3680a599fba/agreement",
    "category": "Доставка ЕДЫ",
    "created_at": "2021-05-18T13:48:34.629Z",
    "date": "2021-05-18",
    "description": "Довезти заказ до клиента, не сожрав по дороге",
    "execution_comment": null,
    "fee": "100.0",
    "id": 5,
    "metadata": {
      "legal": {
        "id": "12345"
      }
    },
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": true,
    "status": "inwork",
    "title": "Доставить ужин",
    "executor": {
      "id": 7,
      "first_name": "Иоанна",
      "last_name": "Степанова",
      "inn": "1234567890",
      "phone": "+78619957532",
      "email": "dulce_beier@raynorrau.us",
      "second_name": "Степановна",
      "status": "active"
    }
  }
}

Запустить процесс оплаты задачи
PATCH/api/tasks/{id}/pay

Example URI

PATCH /api/tasks/6/pay
URI Parameters
HideShow
id
number (required) Example: 6
Request
HideShow

PATCH  /api/tasks/6/pay

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://schaden.us",
    "agreement_type_id": 12,
    "agreement_uri": "https://localhost:3000/api/tasks/b746f3d9c03ba9df7795afb8d2c61ee2df99658c0f3799d645b471e5b336ab99/agreement",
    "category": "Доставка ЕДЫ",
    "created_at": "2021-05-18T13:48:34.728Z",
    "date": "2021-05-18",
    "description": "Довезти заказ до клиента, не сожрав по дороге",
    "execution_comment": null,
    "fee": "100.0",
    "id": 6,
    "metadata": {},
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": true,
    "status": "paying",
    "title": "Доставить ужин",
    "executor": {
      "id": 8,
      "first_name": "Алина",
      "last_name": "Петрова",
      "inn": "1234567890",
      "phone": "+79526355801",
      "email": "shan@hettingerkohler.ca",
      "second_name": "Робертовна",
      "status": "active"
    }
  }
}
Request
HideShow

PATCH  /api/tasks/7/pay

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  422
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "errors": [
    "Task in status inwork can't be paid"
  ]
}
Request
HideShow

PATCH  /api/tasks/8/pay

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  422
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "errors": [
    "Task executor does not have available payment method"
  ]
}

Отменить задачу
PATCH/api/tasks/{id}/cancel

Example URI

PATCH /api/tasks/9/cancel
URI Parameters
HideShow
id
number (required) Example: 9
Request
HideShow

PATCH  /api/tasks/9/cancel

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTUsInRva2VuIjoiS1VLVVhOQSJ9.IPhzBPJsjDCfNIPwABtSzYMGNPVItcvfxt6jjFz93lTXP6NmN5EaWMwjdsRs6r3Ch5NuP_CJXht7LOC1E65RURAYc89pBLzrf5S30_Yz459kAgBE8EY5WcSiCgtgdILWgtqE6CpJus2oTtZdisqC8zckRNHWUrN2nZDS4m_aIdLbfCJ-OnU0Ra-hf2MhA-RUwbILiC2IDB1PgJ6U4wD8BOjiwHXOGENTmYnytmX4IutAlrCCwkLOb8P50l6ROkeQ9ODn5X-Lf_7NrC649m-iX5AE6YyG7BnlKGDTALhqxVSWitqQ_Ww59sQjJlG5AStG42U541g0KkHxDv1JL8G4LQ
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "task": {
    "agreement_signing_uri": "http://hintz.com",
    "agreement_type_id": 15,
    "agreement_uri": "https://localhost:3000/api/tasks/7b9bd403766ac1a3766149bfc04903ac82b362617c825b982c776ec56b2a2731/agreement",
    "category": "Доставка ЕДЫ",
    "created_at": "2021-05-18T13:48:35.104Z",
    "date": "2021-05-18",
    "description": "Довезти заказ до клиента, не сожрав по дороге",
    "execution_comment": null,
    "fee": "100.0",
    "id": 9,
    "metadata": {},
    "paid_at": null,
    "payment_errors": [],
    "receipt_uri": null,
    "signed": false,
    "status": "canceled",
    "title": "Доставить ужин",
    "executor": {
      "id": 11,
      "first_name": "Антонина",
      "last_name": "Зайцева",
      "inn": "1234567890",
      "phone": "+70719399538",
      "email": "margarito.herman@schillerdaniel.name",
      "second_name": "Давыдовна",
      "status": "active"
    }
  }
}
Request
HideShow

PATCH  /api/tasks/10/cancel

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTUsInRva2VuIjoiS1VLVVhOQSJ9.IPhzBPJsjDCfNIPwABtSzYMGNPVItcvfxt6jjFz93lTXP6NmN5EaWMwjdsRs6r3Ch5NuP_CJXht7LOC1E65RURAYc89pBLzrf5S30_Yz459kAgBE8EY5WcSiCgtgdILWgtqE6CpJus2oTtZdisqC8zckRNHWUrN2nZDS4m_aIdLbfCJ-OnU0Ra-hf2MhA-RUwbILiC2IDB1PgJ6U4wD8BOjiwHXOGENTmYnytmX4IutAlrCCwkLOb8P50l6ROkeQ9ODn5X-Lf_7NrC649m-iX5AE6YyG7BnlKGDTALhqxVSWitqQ_Ww59sQjJlG5AStG42U541g0KkHxDv1JL8G4LQ
Content-Type: application/json
Response  422
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "errors": [
    "Task in status inwork can't become canceled"
  ]
}

Получение данных об исполнителе по номеру телефона

Исполнители

При необходимости можно получить данные о самозанятом:

  • first_name — имя

  • second_name — отчество

  • last_name — фамилия

  • phone — номер телефона

  • selfemployed_status — статус самозанятости

Применение

Получить данные исполнителя
GET/api/executors/+79151846547

Example URI

GET /api/executors/+79151846547
URI Parameters
HideShow
id
string (required) Example: %2B79151846547
Request
HideShow

GET  /api/executors/ 79151846547

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTMsInRva2VuIjoiS1VLVVhOQSJ9.O0NGPZ3pwQpuKTauqA2MdYOUZYCE7RHWlOqSD7UjHBPa0EN-JdjENWdbN3G1MNEpZTvIvTNg-hHXLFPK1gLVKvpss09EMnbAQiXOsfawJtuTnRXLTBHj6gykQIi8pWhpOb1Jqc_BKkz_LtYoblg3tvcX0UWZ02e4NOqHd1UQYiu5eNVlxIdo5xQoJaCcHa7woAnlaKf34UPkuX8M-hLBJWVdXGOOY47z_hAXFn2FRSbG9FRdGA0WRhgeNioe501d1NWuab9nRvBf8IMTdgWZChZjsnZjlYA25Es2qZw8N34xm8l-PgYrMrY8c6YxZhl5uoLpTTBuQKKlpzgHuum_BQ
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "executor": {
    "id": 1,
    "first_name": "Анжела",
    "second_name": "Леонидовна",
    "last_name": "Захарова",
    "phone": "+79151846547",
    "email": "ethel.maggio@parker.biz",
    "status": "active",
    "selfemployed": true
  }
}
Request
HideShow

GET  /api/executors/79101230000

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTMsInRva2VuIjoiS1VLVVhOQSJ9.O0NGPZ3pwQpuKTauqA2MdYOUZYCE7RHWlOqSD7UjHBPa0EN-JdjENWdbN3G1MNEpZTvIvTNg-hHXLFPK1gLVKvpss09EMnbAQiXOsfawJtuTnRXLTBHj6gykQIi8pWhpOb1Jqc_BKkz_LtYoblg3tvcX0UWZ02e4NOqHd1UQYiu5eNVlxIdo5xQoJaCcHa7woAnlaKf34UPkuX8M-hLBJWVdXGOOY47z_hAXFn2FRSbG9FRdGA0WRhgeNioe501d1NWuab9nRvBf8IMTdgWZChZjsnZjlYA25Es2qZw8N34xm8l-PgYrMrY8c6YxZhl5uoLpTTBuQKKlpzgHuum_BQ
Content-Type: application/json
Response  404
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "errors": [
    "Executor not found"
  ]
}

Постбэки об изменениях задач и Подписки

Подписки

Для более эффективной работы данные о задачах должны быть всегда актуальными. Для этого мы сделали Подписки и Постбэки. Этот вариант показался нам проще и удобнее, потому что работает лучше и быстрее, чем постоянные запросы GET /api/tasks/{id}. Они не подходят для таких ситуаций, так как объем передаваемых данных значителен, из-за чего создаются необоснованные нагрузки на сеть и сервера.

Для решения этой проблемы можно попросить платформу отправлять запросы на определенные URI в случае изменений данных каких-либо задач. Такой запрос называется «постбэком», а «просьба» к платформе о совершении постбэков — «подпиской».

Постбэки

Логика постбэков заключается в обыкновенных GET и/или POST запросах с таким же телом, как и в ответе на GET/api/tasks/{id}. Отсюда вывод: постбэки способны заменить GET и POST при синхронизации или актуализации данных.

Обратите внимание, даже GET запросы будут иметь тело запроса. Подобное может не поддерживаться некоторыми веб-серверами.

Чтобы проблем не возникло, рекомендуем использовать POST-постбэки во всех ситуациях.

Подпиcки

Подписки на постбэки представляют собой указание платформе отправлять запросы при кажом изменении любой из принадлежащих заказчику задач на указанный в подписке URI. Иначе говоря: подписки на постбэки — это трекинг изменений в ваших задачах.

Подписки имеют следующие атрибуты:

  • id — уникальный идентификатор подписки;

  • uri — эндпоинт, на который будут отправляться запросы с информацией о задаче;

  • http_method — HTTP-метод данных запросов.

Применение

Получить список подписок
GET/api/postback_subscriptions

Example URI

GET /api/postback_subscriptions
Request
HideShow

GET  /api/postback_subscriptions

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTMsInRva2VuIjoiS1VLVVhOQSJ9.O0NGPZ3pwQpuKTauqA2MdYOUZYCE7RHWlOqSD7UjHBPa0EN-JdjENWdbN3G1MNEpZTvIvTNg-hHXLFPK1gLVKvpss09EMnbAQiXOsfawJtuTnRXLTBHj6gykQIi8pWhpOb1Jqc_BKkz_LtYoblg3tvcX0UWZ02e4NOqHd1UQYiu5eNVlxIdo5xQoJaCcHa7woAnlaKf34UPkuX8M-hLBJWVdXGOOY47z_hAXFn2FRSbG9FRdGA0WRhgeNioe501d1NWuab9nRvBf8IMTdgWZChZjsnZjlYA25Es2qZw8N34xm8l-PgYrMrY8c6YxZhl5uoLpTTBuQKKlpzgHuum_BQ
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
[
  {
    "postback_subscription": {
      "id": 1,
      "http_method": "post",
      "uri": "http://dibbert.us"
    }
  },
  {
    "postback_subscription": {
      "id": 2,
      "http_method": "post",
      "uri": "http://howellkris.ca"
    }
  }
]

Оформить подписку
POST/api/postback_subscriptions

Example URI

POST /api/postback_subscriptions
Request
HideShow

POST  /api/postback_subscriptions

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Body
{
  "http_method": "get",
  "uri": "http://example.com"
}
Response  201
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "postback_subscription": {
    "id": 3,
    "http_method": "get",
    "uri": "http://example.com"
  }
}

Отменить подписку
DELETE/api/postback_subscriptions/{id}

Example URI

DELETE /api/postback_subscriptions/4
URI Parameters
HideShow
id
number (required) Example: 4
Request
HideShow

DELETE  /api/postback_subscriptions/4

Headers
Accept: application/json
Authorization: Bearer eyJhbGciOiJSUzI1NiJ9.eyJpYXQiOjE2MjEzNDU3MTQsInRva2VuIjoiS1VLVVhOQSJ9.tjb-TUHJ9PvgnQR4BX2kZ4kgm_-Ua-JR7kIkpo62TXlCRwx6AxdZ8RK-bLqpikmEBJ-TbwR2PhYgsHdyqlp7J1BYHF_V4FdVTIn5GgY5xddISbldOfa-YEIOtguZxeTbGIVXLPAw_OtSuvjBfbig8hLGT9eowPqdof9utJytcWT1zi4NcJg93CpC_4MbWNJcjOCRhAbPFU5N3Xr3rilxYBtefxqlr5TghNW2M67feWZDE9T5NOpYwUxWTzdqAvf3nauLrJIWypobQJgpnrI6HAHEmKONNrP8iQF6Yw1eF2YROM1FB-1z0Ug7XqZ33JIatRVotMjYIl1Ry-1jE5Ognw
Content-Type: application/json
Response  200
HideShow
Headers
Content-Type: application/json; charset=utf-8
Body
{
  "postback_subscription": {
    "id": 4,
    "http_method": "post",
    "uri": "http://keeling.name"
  }
}

Generated by aglio on 18 May 2021