Таблиці описують залежність статусу обʼєкта Bid, Award та Contract від статусу процедури і що саме має повертатися на GET запити в залежності від того "хто робить запит"
BIDS
GET | /api/procedures/{procedure_id}/bids/{bid_id} /api/procedures/{procedure_id}/bids/{bid_id}/documents /api/procedures/{procedure_id}/bids/{bid_id}/documents/{doc_id} /api/procedures/{procedure_id}/bids/{bid_id}/documents/{doc_id}/download /api/procedures | ||||||||
|---|---|---|---|---|---|---|---|---|---|
/{procedure_id} |
|---|
/bids |
|---|
Публікує bid в статусі draft в ЦБД
В результаті успішної публікації у відповіді ініціатор отримує:
id - ідентифікатор Біда
acc_token - токен доступу до Біда
Для публікації потрібно використання в Headers авторизаційного ключа Майданчика ({{broker_token}})
Якщо створювати біда використовуючи некоректно auth токен - помилка 403 Forbidden
/{bid_id}/documents/history /api/procedures/{procedure_id}/bids/{bid_id}/documents/{doc_id}/history | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Статус Процедури/Біда | active_rectification | active_tendering | active_auction | active_qualification | active_awarded | complete | cancelled | unsuccessful | Інші статуси (в деяких напрямках) |
| draft | - | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно |
| active | - | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт |
| deleted | - | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно |
| inactive | - | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно |
invalid | - | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: недоступно Публічно: недоступно | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт (окрім RCD процедури) | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт |
Узагальнено: Якщо робити GET запит без авторизаційного токена, то ендпоінт повинен віддати дані по Бідам виключно у випадку, якщо дані публічно доступні. Тобто, дані можна отримати за ендпоінтом GET /api/procedures/{procedure_id}.
Якщо ж в процедурі, наприклад, біди все ще приховані, вищезазначені ендпоінти мають віддати помилку.
Якщо зробити запит з авторизаційним токеном owner біда, в такому випадку ендпоінти завжди мають віддати обʼєкт
- Для процедури у статусі active_rectification, active_tendering та active_auction у біда має бути можливість отримувати документи свого біда та історію документів свого біда.
Зараз запити:
/api/procedures/{procedure_id}/bids/{bid_id}/documents?acc_token={{bidder_token}}
/api/procedures/{procedure_id}/bids/{bid_id}/documents/{doc_id}?acc_token={{bidder_token}}
/api/procedures/{procedure_id}/bids/{bid_id}/documents/history?acc_token={{bidder_token}}
Якщо запити виконувати БЕЗ використання токена біда, то маємо отримувати 403 (ніхто, окрім самого біда не має бачити його документа, коли процедура в active_tendering або active_auction)
2. Для процедури у статусі active_qualification у біда має бути можливість отримувати документи свого біда та історію документів свого біда.
Зараз запити:
/api/procedures/{procedure_id}/bids/{bid_id}/documents?acc_token={{bidder_token}}
/api/procedures/{procedure_id}/bids/{bid_id}/documents/history?acc_token={{bidder_token}}
/api/procedures/{procedure_id}/bids/{bid_id}/documents/{doc_id}?acc_token={{bidder_token}}
повертають відповідь 200 (це коректно)
Також 200 повертається, якщо робити ПУБЛІЧНИЙ запит без використання токена біда. Це коректно. (Біди після завершення роботи МА стали публічні і будь-хто повинен мати можливість бачити їх документи)
3. Для процедури у статусі complete
Зараз запити:
/api/procedures/{procedure_id}/bids/{bid_id}/documents?acc_token={{bidder_token}}
/api/procedures/{procedure_id}/bids/{bid_id}/documents/history?acc_token={{bidder_token}}
/api/procedures/{procedure_id}/bids/{bid_id}/documents/{doc_id}?acc_token={{bidder_token}}
мають працювати (повертати 200)
Бід вже доступен публічно. Потрібно повертати йому його документи. Їх все одно можна побачити публічно в GET процедури
Також необхідно повертати 200, якщо запит робити без використання токена (публічно мають бути доступні документи)
4. Для статусів процедури cancelled та unsuccessful також необхідно повертати біду його документи по цим endpoints, якщо бід робить запит зі своїм токеном.
Документи Біда публічні починаючи з кваліфікації.
В термінальних статусах (Complete/Unsuccessful/Cancelled) методи get_bid_document/get_bid_documents мають бути публічні і повертати документи біда з авторизаційним токеном і без.
ВАЖЛИВО!
Якщо Бід в статусі deleted draft, то його не відображаємо публічно і публічно не повинні повертатися його документи у вищевказаних endpoints
Наприклад,
Опублікували процедуру
Опублікувався і активувася бід
Скасували процедуру до МА і бід публічно недоступен
Інформація по такому біду не має відображатися публічно. Але може відображатися, якщо бід робить запит з використанням свого токена
AWARDS
GET | /api/procedures/{procedure_id}/awards/{award_id}/documents /api/procedures/{procedure_id}/awards/{award_id}/documents/{doc_id} /api/procedures/{procedure_id}/awards/{award_id}/documents/{doc_id}/download | |||||||
|---|---|---|---|---|---|---|---|---|
Бід створюється до процедури. У процедури, до якої створється бід, має бути не завершений tenderPeriod
Якщо створювати біда до Процедури у якої не наступив tenderPeriod або він вже завершився - отримаємо помилку 400 Bad request
GET/api/procedures/{procedure_id}/ |
|---|
awards/{ |
|---|
award_id} |
|---|
Ендпоінти отримання доступу до даних бідів:
/documents/history /api/procedures/{procedure_id}/awards/{award_id}/documents/{doc_id}/history | ||||||||
|---|---|---|---|---|---|---|---|---|
| Статус Процедури/Аварда | active_rectification | active_tendering | active_auction | active_qualification | active_awarded | complete | cancelled | unsuccessful |
| pending | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | - |
| pending_waiting | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | - |
| active | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | - |
| cancelled | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт |
| unsuccessful | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт |
*в окремих процедурах допускається наявність інших awards статусів |
|
|
| З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт |
...
Узагальнено: Якщо робити GET запит без авторизаційного токена, то ендпоінт повинен віддати дані по Award, так як дані публічно доступні. Тобто, ці дані про Авард можна отримати за ендпоінтом GET
/api/procedures/{procedure_id}
...
CONTRACTS
GET | /api/procedures/{procedure_id}/contracts/{contract_id}/documents | |||||||
|---|---|---|---|---|---|---|---|---|
...
/ |
|---|
...
api/ |
|---|
...
procedures/{procedure_id} |
|---|
...
/ |
|---|
...
contracts/{ |
|---|
...
contract_id} |
|---|
...
/documents |
|---|
...
/{doc_id} /api/procedures/{procedure_id} |
|---|
...
/ |
|---|
...
contracts/{ |
|---|
...
contract_id} |
|---|
...
/ |
|---|
...
documents/{doc_id}/download /api/procedures/{procedure_id}/contracts/{contract_id}/documents/history |
|---|
...
/api/procedures/{procedure_id}/ |
|---|
...
contracts/{ |
|---|
...
contract_id}/documents/{doc_id} |
|---|
...
/history | ||||||||
|---|---|---|---|---|---|---|---|---|
| Статус Процедури/Аварда | active_rectification | active_tendering | active_auction | active_qualification | active_awarded | complete | cancelled | unsuccessful |
| pending | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | - | |
| active | - | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | - |
| cancelled | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт |
| unsuccessful | - | - | - | - | - | - | - | - |
Узагальнено: Якщо робити GET запит без авторизаційного
...
Якщо зробити запит без токена, то ендпоінт повинен віддати дані по бідам виключно у випадку, якщо Contract, так як дані публічно доступні. Тобто, тобто ці дані про Контракт можна отримати за ендпоінтом GETGET /api/procedures/{procedure_id}
CANCELLATION
GET | /api/procedures/{procedure_id}/cancellations/{cancellation_id}/documents /api/procedures/{procedure_id}/cancellations/{cancellation_id}/documents/{doc_id} /api/procedures/{procedure | |||||||
|---|---|---|---|---|---|---|---|---|
...
_id}/cancellations/{cancellation_id}/documents/{doc_id}/download | ||||||||
|---|---|---|---|---|---|---|---|---|
| Статус Процедури/Аварда | active_rectification | active_tendering | active_auction | active_qualification | active_awarded | complete | cancelled | unsuccessful |
| - | - | - | - | - | - | - | З токеном Біда: повертається обʼєкт З токеном Орга: повертається обʼєкт Публічно: повертається обʼєкт | - |