Версия API от 18.06.2020
API
Простое и стабильное API VCV позволит вам легко интегрировать вашу систему с системой VCV
Во всех запросах GET-параметр token — токен компании.
Список вакансий
== Запрос ==
GET /api/vacancies?token=<token>&page=<1>&pageSize=<pageSize>&email=<test@vcv.me>

Параметры:
•	token — токен компании-пользователя
•	page — номер страницы, по-умолчанию 1
•	pageSize — размер страницы, по-умолчанию 50
•	email — необязательный параметр, если передан то используется для выборки откликов в соответствии с правами доступа для данного email

== Ответ ==
200
{
  "data": [
    {
      "id": "1",
      "name": "Вакансия 1",
      "descrption": "Описание 1"
    },
    {
      "id": "2",
      "name": "Вакансия 2",
      "descrption": "Описание 2"
    }
  ],
  "meta": {
    "error": null,
    "page": 1,
    "total": 2
  }
}
Создание приглашения
В теле запроса передается json  с контактными данными кандидатов.

== Запрос ==
POST /api/invite?token=<token>
Headers:
Content-Type:application/json
Body:
{
  "invites": [
    {
      "vacancy_id": 1,
      "first_name": "John",
      "last_name": "Smith",
      "phone": "+79153452352",
      "email": "test@gmail.com"
    },
    {
      "vacancy_id": 2,
      "first_name": "Иван",
      "last_name": "Кузнецов",
      "phone": "+79253223648",
      "email": "test1@gmail.com"
    }
  ]
}

== Ответ == 
200
{
  "data": [
    {
      "id": 36483,
      "vacancy_id": 1,
      "first_name": "John",
      "last_name": "Smith",
      "phone": "+79153452352",
      "email": "test@gmail.com",
      "interview_url": "https://my.vcv.ru/interviews/xxxxxx"
    },
    {
      "id": 36484,
      "vacancy_id": 2,
      "first_name": "Иван",
      "last_name": "Кузнецов",
      "phone": "+79253223648",
      "email": "test1@gmail.com",
      "interview_url": "https://my.vcv.ru/interviews/xxxxxx"
    }
  ],
  "meta": {
    "error": null
  }
}
При возникновении ошибок в одной из записей не будет добавлена ни одна.
Получение списка приглашений созданных с момента dateFrom
== Запрос ==
GET /api/invites?dateFrom=<date>&token=<token>&pageSize=<pageSize>&page=<page>&email=<test@vcv.me>
Параметры:
•	token — токен компании
•	page — номер страницы, по-умолчанию 1
•	pageSize — размер страницы, по-умолчанию 50
•	dateFrom —  время в формате ISO 8601
•	email — необязательный параметр, если передан то используется для выборки откликов в соответствии с правами доступа для данного email

== Ответ ==
200
{
  "data": [
    {
      "id": 36484,
      "email": "test1@gmail.com",
      "vacancy_id": 2,
      "url": "https://vcv.ru/link2",
      "status": {
        "id": 11,
        "title": "Invite sent"
      },
      "video_interview_status": {
         "id": 1,
         "title": "Not started"
      },
      "video_interview": [
                {
                    "question": "Пожалуйста, представься. Сколько тебе лет, чем и где ты сейчас занимаешься?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                },
                {
                    "question": "Какие твои планы на 2020 год?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                }
       ],
       "comments": [
                {
                    "user_id": 1769,
                    "user_email": "test123@mail.ru",
                    "user_name": "User Name",
                    "created_at": "2019-12-02T13:46:35+03:00",
                    "message": "одобрен"
                },
                {
                    "user_id": 1769,
                    "user_email": " test@mail.ru ",
                    "user_name": "User Name",
                    "created_at": "2019-12-02T13:47:41+03:00",
                    "message": "одобрен"
                }
            ]
    },
    {
      "id": 36483,
      "email": "test2@gmail.com",
      "vacancy_id": 1,
      "url": "https://vcv.ru/link1",
      "status": {
        "id": 4,
        "title": "Refused"
      },
      "video_interview_status": {
         "id": 3,
         "title": "Finished"
      },
      "video_interview": [
                {
                    "question": "Пожалуйста, представься. Сколько тебе лет, чем и где ты сейчас занимаешься?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                },
                {
                    "question": "Какие твои планы на 2020 год?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                }
      ],
      "comments": []
    }
  ],
  "meta": {
    "error": null,
    "page": 1,
    "total": 2
  }
}
Получение ссылок на отклики, записанных с момента dateFrom
== Запрос ==
GET /api/responses?dateFrom=<date>&token=<token>&pageSize=<pageSize>&page=<page>&email=<test@vcv.me>
Параметры:
•	token — токен компании
•	page — номер страницы, по-умолчанию 1
•	pageSize — размер страницы, по-умолчанию 50
•	dateFrom —  время в формате ISO 8601
•	email — необязательный параметр, если передан то используется для выборки откликов в соответствии с правами доступа для данного email

== Ответ ==
200
{
  "data": [
    {
      "id": 36484,
      "email": "test1@gmail.com",
      "vacancy_id": 2,
      "url": "https://vcv.ru/link2",
      "status": {
        "id": 1,
        "title": "New"
      },
      "video_interview_status": {
         "id": 3,
         "title": "Finished"
      },
      "video_interview": [
                {
                    "question": "Пожалуйста, представься. Сколько тебе лет, чем и где ты сейчас занимаешься?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                },
                {
                    "question": "Какие твои планы на 2020 год?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                }
       ],
       "comments": [
                {
                    "user_id": 1769,
                    "user_email": "test123@mail.ru",
                    "user_name": "User Name",
                    "created_at": "2019-12-02T13:46:35+03:00",
                    "message": "одобрен"
                },
                {
                    "user_id": 1769,
                    "user_email": " test@mail.ru ",
                    "user_name": "User Name",
                    "created_at": "2019-12-02T13:47:41+03:00",
                    "message": "одобрен"
                }
            ]
    },
    {
      "id": 36483,
      "email": "test2@gmail.com",
      "vacancy_id": 1,
      "url": "https://vcv.ru/link1",
      "status": {
        "id": 4,
        "title": "Refused"
      },
      "video_interview_status": {
         "id": 3,
         "title": "Finished"
      },
      "video_interview": [
                {
                    "question": "Пожалуйста, представься. Сколько тебе лет, чем и где ты сейчас занимаешься?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                },
                {
                    "question": "Какие твои планы на 2020 год?",
                    "answer": " https://vcv.ru/link2",
                    "preview": " https://vcv.ru/link2"
                }
      ],
      "comments": []
    }
  ],
  "meta": {
    "error": null,
    "page": 1,
    "total": 2
  }
}
Получение ссылок на отклики, записанных с момента dateFrom, с обрезанным представлением
== Запрос ==
GET /api/responses/shortcuts/?dateFrom=<date>&token=<token>&pageSize=<pageSize>&page=<page>
Параметры:
•	token — токен компании
•	page — номер страницы, по-умолчанию 1
•	pageSize — размер страницы, по-умолчанию 50
•	dateFrom —  время в формате ISO 8601

== Ответ ==
200
{
  "data": [
    {
      "id": 36484,
      "vacancy_id": 2,
      "url": "https://vcv.ru/link2",
    },
    {
      "id": 36483,
      "vacancy_id": 1,
      "url": "https://vcv.ru/link1",
    }
  ],
  "meta": {
    "error": null,
    "page": 1,
    "total": 2
  }
}
Коды ошибок
•	400 Неверно переданы параметры
•	403 Доступ запрещён. Ошибки доступа.
•	404 Сущность не найдена. Например, при отправке id несуществующей вакансии
если указанного набора функций вам недостаточно, то мы можем его доработать под ваши задачи