Получение данных по конференциям

Получение списка конференций

URL-метод

GET

/api/v1/conference?status=2

status=XXX, где
XXX = 1 или WAITING = запланировано
XXX = 2 или STARTED = запущено
XXX = 3 или ENDED = завершено
XXX = 4 или CANCELED = отменено

Результат

Пример списка конференций

[
  {
    "conferenceId": 3082,
    "title": "Пятница",
    "description": null,
    "creator": {
      "userid": 1,
      "name": "Иван ИВанов",
      "email": "i.ivan@incoma.ru"
    },
    "plannedstartedon": "2020-06-23 15:28:03.133",
    "plannedendedon": "2020-06-23 16:28:03.133",
    "startingAt": "2020-06-23 15:28:03.133",
    "endingAt": "2020-06-23 16:28:03.133",
    "status": "WAITING",
    "url": "/conference/3082",
    "url_without_registration": "/conference/3082?token=f48e5f01-5dab-4679-8c08-03e176f63046"
  },
  {
    "conferenceId": 4283,
    "title": "asdfg",
    "description": null,
    "creator": {
      "userid": 3,
      "name": "Андрей Андреев",
      "email": "a.and@incoma.ru"
    },
    "plannedstartedon": "2020-08-14 07:48:18.971",
    "plannedendedon": "2020-08-14 08:48:18.971",
    "startingAt": "2020-08-14 07:48:18.971",
    "endingAt": "2020-08-14 08:48:18.971",
    "status": "WAITING",
    "url": "/conference/4283",
    "url_without_registration": "/conference/4283?token=0269d8cf-263f-41b1-833d-7da6e9161446"
  }
]
JS

Получение информации по конкретной конференции

URL-метод

GET

api/v1/conference/{CONFERENCE_ID}

Результат

Пример информации по конкретной конференции

{
  "conferenceId": 1,
  "title": "api test",
  "description": null,
  "creator": null,
  "plannedstartedon": "2020-09-03 16:04:47.247",
  "plannedendedon": "2020-09-03 17:04:47.247",
  "startingAt": "2020-09-03 16:04:47.247",
  "endingAt": "2020-09-03 17:04:47.247",
  "status": "WAITING",
  "url": "/conference/1",
  "url_without_registration": "/conference/1?token=4d57d30f-c35e-4d3f-a7e4-1e8fbcf2c8ff"
}
JS

Создание конференции

URL-метод

POST

/api/v1/conference
 Запрос

Пример запроса добавления конференции

{
  "title",
  "description",
  "creator": {
    "userid",
    "name",
    "email"
  },
  participants: [],
  "plannedstartedon",
  "plannedendedon"
}
JS

где participants заполняется так:

Пример заполнения блока participants в модели создаваемой конференции

[
  {
    "id": 3173,
    "isParticipant": true,
    "isSpeaker": false,
    "isOperator": true
  },
  {
    "id": 3115,
    "isParticipant": true
  },
  {
    "email": "email@need.here",
    "isGuest": true,
    "isParticipant": true
   }
]
JS
Результат

Пример успешного добавления конференции

{
    "message": "The Conference has created",
    "conferenceid": "182",
    "name": "Created",
    "status": 201
}
JS

Изменение конференции

URL-метод

PATCH

/api/v1/conference/{CONFERENCE_ID}
Запрос

Пример запроса редактирования конференции

{
  "title",
  "description",
  "creator": {
    "userid",
    "name",
    "email"
  },
  "plannedstartedon",
  "plannedendedon"
}
JS

ВНИМАНИЕ!

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

где participants заполняется так:

Пример заполнения блока participants в модели создаваемой конференции

[
  {
    "id": 3173,
    "isParticipant": true,
    "isSpeaker": false,
    "isOperator": true
  },
  {
    "id": 3115,
    "isParticipant": true
  },
  {
    "email": "email@need.here",
    "isGuest": true,
    "isParticipant": true
   }
]
JS
Результат

Пример успешного добавления конференции

{
    "message": "The Conference has created",
    "conferenceid": "182",
    "name": "Created",
    "status": 201
}
JS

Удаление конференции

URL-метод

DELETE

/api/v1/conference/{CONFERENCE_ID}
Результат

Пример успешного выполнения запроса

{
"code": 204
}
JS

Пример неудачного выполнения запроса (попытка удаления несуществующей конференции)

{
  "name": "Not Found",
  "message": "Conference not found",
  "code": 0,
  "status": 404
}
JS