API Documentation
Вітаю тебе, відважний розробнику, який вирішить зробити добру справу для свого університету! На цій сторінці ти можеш дізнатись, які методи надаються для роботи з API. Також тут буде кілька прикладів виклику того чи іншого методу.
Авторизація
Викликавши даний метод ти зможеш авторизуватись, вказавши Email користувача та пароль.
Endpoint
POST api/user/login
Приклад запиту
POST /api/user/login
Content-Type: application/json
{
"email": "mykhailo@site.com",
"password": "Qwerty12345&"
}
Приклад відповіді
{
"Token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1laWQiOiIzMWU0Njc3ZS0zYjNiLTQ3ZDMtOTdkYi0yMDFhNGM5MjI5MTUiLCJ1bmlxdWVfbmFtZSI6Ik1vZGVyYXRvckBlcGFtOS5jb20iLCJuYmYiOjE3MjAzNjM0OTIsImV4cCI6MTcyMDk2ODI5MiwiaWF0IjoxNzIwMzYzNDkyfQ.m4FNHxyvpEug5hfgijlZ-EmSuqwskY2-DgIKOe7ByhM"
}
Коди відповіді
- 200 OK: Авторизацію виконано успішно.
- 400 Bad Request: Неправильний формат запиту.
- 500 Internal Server Error: Виникла непередбачена помилка на сервері.
Форма зворотного звязку
Викликавши даний метод ти зможеш надіслати feedback, вказавши імя, Email та текст повідомлення.
Endpoint
POST api/contacts/send-feedback
Приклад запиту
POST /api/contacts/send-feedback
Content-Type: application/json
{
"name": "Андрій",
"email": "person@epam.com",
"message": "Ваш веб-сайт - неперевершений!"
}
Приклад відповіді
{
"status": "success"
}
Коди відповіді
- 200 OK: Feedback успішно надіслано.
- 400 Bad Request: Неправильний формат запиту.
- 500 Internal Server Error: Виникла непередбачена помилка на сервері.
Інформація про поточного користувача
Викликавши даний метод ти зможеш отримати повну інформацію про залогіненого користувача.
Endpoint
GET api/user/get-current-user-info
Приклад запиту
GET /api/user/get-current-user-info
Приклад відповіді
{
"Surname": null,
"Name": null,
"MiddleName": null,
"UserName": "Moderator@epam9.com",
"Email": "Moderator@epam9.com",
"EmailConfirmed": false,
"PhoneNumber": "0000000000",
"PhoneNumberConfirmed": false,
"TwoFactorEnabled": false,
"LockoutEnd": null,
"LockoutEnabled": true,
"AccessFailedCount": 0
}
Коди відповіді
- 200 OK: Запит виконано успішно.
- 401 Unauthorized: Користувач не авторизований.
- 500 Internal Server Error: Виникла помилка на сервері.
Завантажити файл з публікацією
Викликавши даний метод ти зможеш завантажити PDF-файл, який відповідає вказаному id публікації.
Endpoint
GET api/publication/download-file
Приклад запиту
GET /api/publication/download-file?publId={publId}
Приклад відповіді
{
"Content": array of bytes
}
Коди відповіді
- 200 OK: Запит виконано успішно.
- 500 Internal Server Error: Виникла непередбачена помилка на сервері.
Список всіх публікацій
Викликавши даний метод ти зможеш отримати перелік всіх публікацій.
Endpoint
GET api/publication/get-all
Приклад запиту
GET /api/publication/get-all
Приклад відповіді
[
{
"Id":1,
"Title":"Назва КНИГИ назва публікації назва публікації назва публікації назва публікації назва публікації",
"Author":"Іван Ткаченко",
"Abstract":"Анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація",
"Category":"Собаки",
"PublicationDate":"0001-01-01",
},
{
"Id":2,
"Title":"Назва ПУБЛІКАЦІЇ КОТИ назва публікації назва публікації назва публікації назва публікації назва публікації",
"Author":"Іван Ткаченко",
"Abstract":"Анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація",
"Category":"Коти",
"PublicationDate":"0001-01-01",
}
]
Коди відповіді
- 200 OK: Запит виконано успішно.
- 500 Internal Server Error: Виникла непередбачена помилка на сервері.
Отримати публікацію
Викликавши даний метод ти зможеш отримати інформацію про публікацію по заданому id.
Endpoint
GET api/publication/get-by-id
Приклад запиту
GET /api/publication/get-by-id?id={id}
Приклад відповіді
{
"Id":2,
"Title":"Назва ПУБЛІКАЦІЇ КОТИ назва публікації назва публікації назва публікації назва публікації назва публікації",
"Author":"Іван Ткаченко",
"Abstract":"Анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація",
"Category":"Коти",
"PublicationDate":"0001-01-01",
}
Коди відповіді
- 200 OK: Запит виконано успішно.
- 500 Internal Server Error: Виникла непередбачена помилка на сервері.
Знайти публікацію за назвою, анотацією, категорією
Викликавши даний метод ти зможеш отримати перелік публікацій, які містять у собі точні співпадіння searchString з назвою чи анотацією, чи категорією.
Endpoint
GET api/publication/search-by-tit-abs-cat
Приклад запиту
GET /api/publication/search-by-tit-abs-cat?searchString={searchString}
Приклад відповіді
[
{
"Id":1,
"Title":"Назва КНИГИ назва публікації назва публікації назва публікації назва публікації назва публікації",
"Author":"Іван Ткаченко",
"Abstract":"Анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація",
"Category":"Собаки",
"PublicationDate":"0001-01-01",
},
{
"Id":2,
"Title":"Назва ПУБЛІКАЦІЇ КОТИ назва публікації назва публікації назва публікації назва публікації назва публікації",
"Author":"Іван Ткаченко",
"Abstract":"Анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація анотація",
"Category":"Коти",
"PublicationDate":"0001-01-01",
}
]
Коди відповіді
- 200 OK: Запит виконано успішно.
- 500 Internal Server Error: Виникла непередбачена помилка на сервері.
Створити публікацію
Викликавши даний метод ти зможеш створити нову публікацію із полями, надісланими у якості аргументу.
Endpoint
POST api/publication/create-by-publication
Приклад запиту
POST /api/publication/create-by-publication
Content-Type: application/json
{
"Id": "14",
"Title": "Цікава назва статті",
"Author": "Анонім Анонімович",
"Abstract": "Опис цікавої статті",
"Category": "Тварини",
"PublicationDate": "21.12.2024",
"ByteImgArr": array of bytes
}
Приклад відповіді
{
"status": "success"
}
Коди відповіді
- 200 OK: Відгук успішно надіслано.
- 400 Bad Request: Неправильний формат запиту.
- 401 Unauthorized: Користувач не авторизований.
- 500 Internal Server Error: Виникла помилка на сервері.
Редагувати публікацію
Викликавши даний метод ти зможеш відредагувати існуючу публікацію із полями, надісланими у якості аргументу.
Endpoint
POST api/publication/update-by-publication
Приклад запиту
POST /api/publication/update-by-publication
Content-Type: application/json
{
"Id": "14",
"Title": "Цікава назва статті",
"Author": "Анонім Анонімович",
"Abstract": "Опис цікавої статті",
"Category": "Тварини",
"PublicationDate": "21.12.2024",
"ByteImgArr": array of bytes
}
Приклад відповіді
{
"status": "success"
}
Коди відповіді
- 200 OK: Відгук успішно надіслано.
- 400 Bad Request: Неправильний формат запиту.
- 401 Unauthorized: Користувач не авторизований.
- 500 Internal Server Error: Виникла помилка на сервері.
Видалити публікацію (спосіб 1)
Викликавши даний метод ти зможеш видалити існуючу публікацію із полями, надісланими у якості аргументу.
Endpoint
POST api/publication/delete-by-publication
Приклад запиту
POST /api/publication/delete-by-publication
Content-Type: application/json
{
"Id": "14",
"Title": "Цікава назва статті",
"Author": "Анонім Анонімович",
"Abstract": "Опис цікавої статті",
"Category": "Тварини",
"PublicationDate": "21.12.2024",
"ByteImgArr": array of bytes
}
Приклад відповіді
{
"status": "success"
}
Коди відповіді
- 200 OK: Відгук успішно надіслано.
- 400 Bad Request: Неправильний формат запиту.
- 401 Unauthorized: Користувач не авторизований.
- 500 Internal Server Error: Виникла помилка на сервері.
Видалити публікацію (спосіб 2)
Викликавши даний метод ти зможеш видалити існуючу публікацію за заданим id.
Endpoint
POST api/publication/delete-by-publication-id
Приклад запиту
POST /api/publication/delete-by-publication
Content-Type: application/json
{
"Id": "14"
}
Приклад відповіді
{
"status": "success"
}
Коди відповіді
- 200 OK: Відгук успішно надіслано.
- 400 Bad Request: Неправильний формат запиту.
- 401 Unauthorized: Користувач не авторизований.
- 500 Internal Server Error: Виникла помилка на сервері.