Аутентифікація¶
Деякі запити API (особливо GET запити лише для читання) не потребують аутентифікації. Інші, ті, які модифікують дані у базі даних, потребують аутентифікації брокера через ключ API. Додатково видаються токени власника, щоб забезпечити кілька ролей дійових осіб при створенні об’єкта.
Ключі API¶
Basic Authenication¶
Ключ API - це ім’я користувача, що буде використовуватись зі схемою базової аутентифікації (див. RFC 2617#section-2).
Bearer Authenication¶
Ключ API - це токен, що буде використовуватись для аутентифікації.
Токени власника¶
Отримання токена¶
Токен видається, коли об’єкт створюється в базі даних:
Request
POST /api/2.5/tenders?opt_pretty=1 HTTP/1.0
Authorization: Bearer broker
Content-Length: 4645
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"title": "футляри до державних нагород",
"title_en": "Cases with state awards",
"title_ru": "футляры к государственным наградам",
"procuringEntity": {
"name": "Державне управління справами",
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"address": {
"countryName": "Україна",
"postalCode": "01220",
"region": "м. Київ",
"locality": "м. Київ",
"streetAddress": "вул. Банкова, 11, корпус 1"
},
"contactPoint": {
"name": "Державне управління справами",
"telephone": "+0440000000"
},
"kind": "general"
},
"value": {
"amount": 500,
"currency": "UAH"
},
"minimalStep": {
"amount": 5,
"currency": "UAH"
},
"items": [
{
"id": "de79b5f1dd5c4a5892c83a675595a080",
"description": "футляри до державних нагород",
"description_en": "Cases with state awards",
"description_ru": "футляры к государственным наградам",
"classification": {
"scheme": "ДК021",
"id": "44617100-9",
"description": "Cartons"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"unit": {
"name": "кілограм",
"code": "KGM",
"value": {
"amount": 6
}
},
"quantity": 5
}
],
"enquiryPeriod": {
"endDate": "2023-01-08T00:00:00+02:00"
},
"tenderPeriod": {
"endDate": "2023-01-15T00:00:00+02:00"
},
"procurementMethodType": "belowThreshold",
"mode": "test",
"features": [
{
"code": "OCDS-123454-AIR-INTAKE",
"featureOf": "item",
"relatedItem": "de79b5f1dd5c4a5892c83a675595a080",
"title": "Потужність всмоктування",
"title_en": "Air Intake",
"description": "Ефективна потужність всмоктування пилососа, в ватах (аероватах)",
"enum": [
{
"value": 0.1,
"title": "До 1000 Вт"
},
{
"value": 0.15,
"title": "Більше 1000 Вт"
}
]
},
{
"code": "OCDS-123454-YEARS",
"featureOf": "tenderer",
"title": "Років на ринку",
"title_en": "Years trading",
"description": "Кількість років, які організація учасник працює на ринку",
"enum": [
{
"value": 0.05,
"title": "До 3 років"
},
{
"value": 0.1,
"title": "Більше 3 років, менше 5 років"
},
{
"value": 0.15,
"title": "Більше 5 років"
}
]
}
],
"milestones": [
{
"id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"title": "signingTheContract",
"code": "prepayment",
"type": "financing",
"duration": {
"days": 2,
"type": "banking"
},
"sequenceNumber": 0,
"percentage": 45.55
},
{
"title": "deliveryOfGoods",
"code": "postpayment",
"type": "financing",
"duration": {
"days": 900,
"type": "calendar"
},
"sequenceNumber": 0,
"percentage": 54.45
}
],
"mainProcurementCategory": "services"
}
}
Response
HTTP/1.0 201 Created
Content-Type: application/json
Location: http://lb-api-sandbox.prozorro.gov.ua/api/2.5/tenders/6f821eb52f1b4cfaa98210ca6e41e89d
{
"data": {
"mainProcurementCategory": "services",
"title_en": "[TESTING] Cases with state awards",
"title_ru": "[ТЕСТИРОВАНИЕ] футляры к государственным наградам",
"title": "[ТЕСТУВАННЯ] футляри до державних нагород",
"mode": "test",
"status": "draft",
"submissionMethod": "electronicAuction",
"procurementMethod": "open",
"awardCriteria": "lowestCost",
"value": {
"amount": 500.0,
"currency": "UAH",
"valueAddedTaxIncluded": true
},
"minimalStep": {
"amount": 5.0,
"currency": "UAH",
"valueAddedTaxIncluded": true
},
"tenderPeriod": {
"startDate": "2023-01-08T00:00:00+02:00",
"endDate": "2023-01-15T00:00:00+02:00"
},
"items": [
{
"id": "de79b5f1dd5c4a5892c83a675595a080",
"description": "футляри до державних нагород",
"description_en": "Cases with state awards",
"description_ru": "футляры к государственным наградам",
"classification": {
"description": "Cartons",
"scheme": "ДК021",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"unit": {
"name": "кілограм",
"value": {
"amount": 6.0,
"currency": "UAH",
"valueAddedTaxIncluded": true
},
"code": "KGM"
},
"quantity": 5.0
}
],
"features": [
{
"code": "OCDS-123454-AIR-INTAKE",
"featureOf": "item",
"relatedItem": "de79b5f1dd5c4a5892c83a675595a080",
"title": "Потужність всмоктування",
"title_en": "Air Intake",
"description": "Ефективна потужність всмоктування пилососа, в ватах (аероватах)",
"enum": [
{
"value": 0.1,
"title": "До 1000 Вт"
},
{
"value": 0.15,
"title": "Більше 1000 Вт"
}
]
},
{
"code": "OCDS-123454-YEARS",
"featureOf": "tenderer",
"title": "Років на ринку",
"title_en": "Years trading",
"description": "Кількість років, які організація учасник працює на ринку",
"enum": [
{
"value": 0.05,
"title": "До 3 років"
},
{
"value": 0.1,
"title": "Більше 3 років, менше 5 років"
},
{
"value": 0.15,
"title": "Більше 5 років"
}
]
}
],
"milestones": [
{
"id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"title": "signingTheContract",
"type": "financing",
"code": "prepayment",
"percentage": 45.55,
"duration": {
"days": 2,
"type": "banking"
},
"sequenceNumber": 0
},
{
"id": "99b04fa2eebd4b3f86f53fdd0fc74756",
"title": "deliveryOfGoods",
"type": "financing",
"code": "postpayment",
"percentage": 54.45,
"duration": {
"days": 900,
"type": "calendar"
},
"sequenceNumber": 0
}
],
"procurementMethodType": "belowThreshold",
"procuringEntity": {
"name": "Державне управління справами",
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"address": {
"streetAddress": "вул. Банкова, 11, корпус 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "01220",
"countryName": "Україна"
},
"contactPoint": {
"telephone": "+0440000000",
"name": "Державне управління справами"
},
"kind": "general"
},
"enquiryPeriod": {
"endDate": "2023-01-08T00:00:00+02:00",
"startDate": "2023-01-01T00:00:00+02:00",
"clarificationsUntil": "2023-01-09T00:00:00+02:00"
},
"tenderID": "UA-2023-01-01-000002-a",
"owner": "broker",
"date": "2023-01-01T00:00:00+02:00",
"dateCreated": "2023-01-01T00:00:00+02:00",
"dateModified": "2023-01-01T00:00:00+02:00",
"id": "6f821eb52f1b4cfaa98210ca6e41e89d"
},
"access": {
"token": "5489a4b46edc47b1b63c2aa866e367ea",
"transfer": "f3c8954e1b364a64ac29a2c6e12278bb"
}
}
У відповіді є access разом з token. Це значення можна використати для модифікації об’єктів у «ролі Власника».
Використання токена¶
Ви можете передати токен доступу такими способами:
- параметр рядка URL запиту acc_token
- заголовок HTTP запиту X-Access-Token
- access.token в тілі запитів POST/PUT/PATCH
Ось приклад, де токен передається як рядок URL запиту:
Request
PATCH /api/2.5/tenders/f2ffdfd3a21b4081841738915486b18b?acc_token=b8bbe7f96c0a4205be28146aec83c55b HTTP/1.0
Authorization: Bearer broker
Content-Length: 110
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"tenderPeriod": {
"startDate": "2023-01-08T00:00:00+02:00",
"endDate": "2023-01-16T00:00:11+02:00"
}
}
}
Response
HTTP/1.0 200 OK
Content-Type: application/json
{
"data": {
"date": "2023-01-01T00:00:00+02:00",
"dateModified": "2023-01-01T00:00:01+02:00",
"dateCreated": "2023-01-01T00:00:00+02:00",
"tenderID": "UA-2023-01-01-000001-a",
"status": "active.enquiries",
"owner": "broker",
"title": "футляри до державних нагород",
"mainProcurementCategory": "goods",
"submissionMethod": "electronicAuction",
"procurementMethod": "open",
"awardCriteria": "lowestCost",
"value": {
"amount": 500.0,
"currency": "UAH",
"valueAddedTaxIncluded": true
},
"next_check": "2023-01-08T00:00:00+02:00",
"minimalStep": {
"amount": 15.0,
"currency": "UAH",
"valueAddedTaxIncluded": true
},
"tenderPeriod": {
"startDate": "2023-01-08T00:00:00+02:00",
"endDate": "2023-01-16T00:00:11+02:00"
},
"items": [
{
"id": "ffffffffffffffffffffffffffffffff",
"description": "футляри до державних нагород",
"description_en": "Cases with state awards",
"description_ru": "футляры к государственным наградам",
"classification": {
"description": "Cartons",
"scheme": "ДК021",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"unit": {
"name": "кілограм",
"value": {
"amount": 6.0,
"currency": "UAH",
"valueAddedTaxIncluded": true
},
"code": "KGM"
},
"quantity": 5.0
}
],
"milestones": [
{
"id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
"title": "signingTheContract",
"type": "financing",
"code": "prepayment",
"percentage": 45.55,
"duration": {
"days": 2,
"type": "banking"
},
"sequenceNumber": 0
},
{
"id": "0f95cecf71134fa899a1be0dcf9ae13c",
"title": "deliveryOfGoods",
"type": "financing",
"code": "postpayment",
"percentage": 54.45,
"duration": {
"days": 900,
"type": "calendar"
},
"sequenceNumber": 0
}
],
"procurementMethodType": "belowThreshold",
"procuringEntity": {
"name": "Державне управління справами",
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"address": {
"streetAddress": "вул. Банкова, 11, корпус 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "01220",
"countryName": "Україна"
},
"contactPoint": {
"telephone": "+0440000000",
"name": "Державне управління справами"
},
"kind": "general"
},
"enquiryPeriod": {
"startDate": "2023-01-01T00:00:00+02:00",
"clarificationsUntil": "2023-01-09T00:00:00+02:00",
"endDate": "2023-01-08T00:00:00+02:00"
},
"id": "f2ffdfd3a21b4081841738915486b18b"
}
}