Приклад для плану закупівлі
Зміна власника плану закупівлі
Переглянемо приклад зміни власника для плану.
Створення плану закупівлі
Спочатку створимо план закупівлі:
POST /api/2.5/plans?opt_pretty=1 HTTP/1.0
Authorization: Bearer brokerx
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"rationale": {
"description": "Недостатньо змістовне обгрунтування"
},
"tender": {
"procurementMethod": "open",
"procurementMethodType": "belowThreshold",
"tenderPeriod": {
"startDate": "2027-01-08T00:00:00+02:00"
}
},
"items": [
{
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"deliveryAddress": {
"countryName": "Україна",
"postalCode": "79000",
"region": "м. Київ",
"locality": "м. Київ",
"streetAddress": "вул. Банкова 1"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.92",
"description": "Насіння гірчиці"
}
],
"unit": {
"code": "KGM",
"name": "кг"
},
"classification": {
"scheme": "ДК021",
"description": "Mustard seeds",
"id": "03111600-8"
},
"quantity": 1000,
"description": "Насіння гірчиці"
},
{
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"deliveryAddress": {
"countryName": "Україна",
"postalCode": "79000",
"region": "м. Київ",
"locality": "м. Київ",
"streetAddress": "вул. Банкова 1"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.95",
"description": "Насіння соняшнику"
}
],
"unit": {
"code": "KGM",
"name": "кг"
},
"classification": {
"scheme": "ДК021",
"description": "Sunflower seeds",
"id": "03111300-5"
},
"quantity": 2000,
"description": "Насіння соняшнику"
},
{
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"deliveryAddress": {
"countryName": "Україна",
"postalCode": "79000",
"region": "м. Київ",
"locality": "м. Київ",
"streetAddress": "вул. Банкова 1"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.84",
"description": "Насіння бавовнику"
}
],
"unit": {
"code": "KGM",
"name": "кг"
},
"classification": {
"scheme": "ДК021",
"description": "Cotton seeds",
"id": "03111400-6"
},
"quantity": 3000,
"description": "Насіння бавовнику"
}
],
"classification": {
"scheme": "ДК021",
"description": "Seeds",
"id": "03111000-2"
},
"additionalClassifications": [
{
"scheme": "КЕКВ",
"id": "2000",
"description": "Поточні видатки"
}
],
"procuringEntity": {
"identifier": {
"scheme": "UA-EDR",
"id": "111983",
"legalName": "ДП Державне Управління Справами"
},
"name": "ДУС",
"address": {
"countryName": "Україна",
"postalCode": "01220",
"region": "м. Київ",
"locality": "м. Київ",
"streetAddress": "вул. Банкова, 11, корпус 1"
},
"kind": "general",
"signerInfo": {
"name": "Test Testovich",
"telephone": "+380950000000",
"email": "example@email.com",
"iban": "111111111111111",
"authorizedBy": "Статут компанії",
"position": "Генеральний директор"
}
},
"buyers": [
{
"identifier": {
"scheme": "UA-EDR",
"id": "111983",
"legalName": "ДП Державне Управління Справами"
},
"name": "ДУС",
"address": {
"countryName": "Україна",
"postalCode": "01220",
"region": "м. Київ",
"locality": "м. Київ",
"streetAddress": "вул. Банкова, 11, корпус 1"
},
"kind": "general",
"signerInfo": {
"name": "Test Testovich",
"telephone": "+380950000000",
"email": "example@email.com",
"iban": "111111111111111",
"authorizedBy": "Статут компанії",
"position": "Генеральний директор"
}
}
],
"budget": {
"project": {
"name": "proj_name",
"id": "123"
},
"amount": 10000,
"amountNet": 12222,
"currency": "UAH",
"id": "12303111000-2",
"description": "budget_description",
"period": {
"startDate": "2027-01-01T00:00:00",
"endDate": "2027-12-31T00:00:00"
},
"breakdown": [
{
"title": "other",
"description": "Breakdown other description.",
"value": {
"amount": 1500,
"currency": "UAH"
}
}
]
},
"project": {
"title": "DREAMs come true",
"uri": "https://dream.gov.ua/ua/project/DREAM-UA-030524-EE48E08C/profile"
}
}
}
HTTP/1.0 201 Created
Content-Type: application/json
Location: http://lb-api-sandbox.prozorro.gov.ua/api/2.5/plans/5e6819d2385c4c6a8a7877b87488074c
{
"data": {
"status": "scheduled",
"procuringEntity": {
"id": "634ca17a96ee43b49a273a81ee1730fa",
"name": "ДУС",
"identifier": {
"scheme": "UA-EDR",
"id": "111983",
"legalName": "ДП Державне Управління Справами"
},
"address": {
"streetAddress": "вул. Банкова, 11, корпус 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "01220",
"countryName": "Україна"
},
"kind": "general",
"signerInfo": {
"name": "Test Testovich",
"email": "example@email.com",
"telephone": "+380950000000",
"iban": "111111111111111",
"position": "Генеральний директор",
"authorizedBy": "Статут компанії"
}
},
"tender": {
"procurementMethod": "open",
"procurementMethodType": "belowThreshold",
"tenderPeriod": {
"startDate": "2027-01-08T00:00:00+02:00"
}
},
"budget": {
"id": "12303111000-2",
"description": "budget_description",
"amount": 10000.0,
"currency": "UAH",
"amountNet": 12222.0,
"project": {
"id": "123",
"name": "proj_name"
},
"period": {
"startDate": "2027-01-01T00:00:00+02:00",
"endDate": "2027-12-31T00:00:00+02:00"
},
"breakdown": [
{
"id": "79ab7a5b3d174eebb9db7f95a1d9db02",
"title": "other",
"description": "Breakdown other description.",
"value": {
"amount": 1500.0,
"currency": "UAH"
}
}
]
},
"classification": {
"description": "Seeds",
"scheme": "ДК021",
"id": "03111000-2"
},
"additionalClassifications": [
{
"scheme": "КЕКВ",
"id": "2000",
"description": "Поточні видатки"
}
],
"items": [
{
"id": "6e9e9fdc76034547ae8e5fd0fe3c2e37",
"classification": {
"description": "Mustard seeds",
"scheme": "ДК021",
"id": "03111600-8"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.92",
"description": "Насіння гірчиці"
}
],
"unit": {
"name": "кг",
"code": "KGM"
},
"quantity": 1000.0,
"deliveryAddress": {
"streetAddress": "вул. Банкова 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "79000",
"countryName": "Україна"
},
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"description": "Насіння гірчиці"
},
{
"id": "fc0a16bffbcb46aabba00fa2de5262eb",
"classification": {
"description": "Sunflower seeds",
"scheme": "ДК021",
"id": "03111300-5"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.95",
"description": "Насіння соняшнику"
}
],
"unit": {
"name": "кг",
"code": "KGM"
},
"quantity": 2000.0,
"deliveryAddress": {
"streetAddress": "вул. Банкова 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "79000",
"countryName": "Україна"
},
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"description": "Насіння соняшнику"
},
{
"id": "b23ab41b6d7a4d12b2bf88f3e935372b",
"classification": {
"description": "Cotton seeds",
"scheme": "ДК021",
"id": "03111400-6"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.84",
"description": "Насіння бавовнику"
}
],
"unit": {
"name": "кг",
"code": "KGM"
},
"quantity": 3000.0,
"deliveryAddress": {
"streetAddress": "вул. Банкова 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "79000",
"countryName": "Україна"
},
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"description": "Насіння бавовнику"
}
],
"buyers": [
{
"id": "79de7466f3374c8690d63b572715a112",
"name": "ДУС",
"identifier": {
"scheme": "UA-EDR",
"id": "111983",
"legalName": "ДП Державне Управління Справами"
},
"address": {
"streetAddress": "вул. Банкова, 11, корпус 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "01220",
"countryName": "Україна"
},
"kind": "general",
"signerInfo": {
"name": "Test Testovich",
"email": "example@email.com",
"telephone": "+380950000000",
"iban": "111111111111111",
"position": "Генеральний директор",
"authorizedBy": "Статут компанії"
}
}
],
"rationale": {
"description": "Недостатньо змістовне обгрунтування",
"date": "2027-01-01T00:00:00+02:00"
},
"project": {
"title": "DREAMs come true",
"uri": "https://dream.gov.ua/ua/project/DREAM-UA-030524-EE48E08C/profile"
},
"planID": "UA-P-2027-01-01-000001-a",
"owner": "brokerx",
"datePublished": "2027-01-01T00:00:00+02:00",
"dateCreated": "2027-01-01T00:00:00+02:00",
"dateModified": "2027-01-01T00:00:00+02:00",
"id": "5e6819d2385c4c6a8a7877b87488074c"
},
"access": {
"token": "f45f0273c2ea4d52bde81c4f30b09376",
"transfer": "9192aab96d4b4959affa7d7644f539a6"
}
}
Майданчик broker є поточним власником owner плану закупівлі.
Зверніть увагу, що секція відповіді access містить ключ transfer, який використовується для зміни власника плану закупівлі.
Після реєстрація плану закупівлі в ЦБД майданчик повинен довести ключ transfer до відома клієнта.
Ініціація зміни власника
Майданчик, що стане новим власником плану закупівлі, повинен створити об’єкт Transfer.
POST /api/2.5/transfers HTTP/1.0
Authorization: Bearer broker1
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {}
}
HTTP/1.0 201 Created
Content-Type: application/json
{
"data": {
"date": "2027-01-01T00:00:00+02:00",
"id": "6681cf91ab4c4f1e919c18d368a16c25"
},
"access": {
"token": "387cfff9b93243ddaa148e5ea350ceb5",
"transfer": "cc5488fbcc4f4313bf04bd2aea88d16c"
}
}
Об’єкт Transfer містить новий ключ доступу token та новий ключ transfer для об’єкта, власник якого буде змінений.
Об’єкт Transfer можна переглянути за допомогою ідентифікатора id:
GET /api/2.5/transfers/6681cf91ab4c4f1e919c18d368a16c25 HTTP/1.0
Authorization: Bearer broker1
Host: public-api-sandbox.prozorro.gov.ua
HTTP/1.0 200 OK
Content-Type: application/json
{
"data": {
"date": "2027-01-01T00:00:00+02:00",
"id": "6681cf91ab4c4f1e919c18d368a16c25"
}
}
Зміна власника плану закупівлі
Можливість зміни власника плану закупівлі залежить від статусу плану закупівлі:
Дозволено |
Не дозволено |
scheduled |
draft cancelled complete |
Щоб змінити власника плану закупівлі новий майданчик повинен надіслати POST запит на відповідний /plans/id/ з секцією data, що міститиме ідентифікатор id для Transfer та ключ transfer отриманий від клієнта:
POST /api/2.5/plans/5e6819d2385c4c6a8a7877b87488074c/ownership HTTP/1.0
Authorization: Bearer broker1
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"id": "6681cf91ab4c4f1e919c18d368a16c25",
"transfer": "9192aab96d4b4959affa7d7644f539a6"
}
}
HTTP/1.0 200 OK
Content-Type: application/json
{
"data": {
"owner": "broker1",
"id": "5e6819d2385c4c6a8a7877b87488074c"
}
}
Оновлене значення властивості owner вказує, що власник був успішно змінений.
Зверніть увагу, що новий майданчик повинен довести до відома клієнта новий ключ transfer (згенерований в об’єкті Transfer).
Після того, як об’єкт Transfer було застосовано, для нього генерується властивість usedFor (вказується шлях до об’єкта, власника якого було змінено):
GET /api/2.5/transfers/6681cf91ab4c4f1e919c18d368a16c25 HTTP/1.0
Authorization: Bearer broker1
Host: public-api-sandbox.prozorro.gov.ua
HTTP/1.0 200 OK
Content-Type: application/json
{
"data": {
"date": "2027-01-01T00:00:00+02:00",
"usedFor": "/plans/5e6819d2385c4c6a8a7877b87488074c",
"id": "6681cf91ab4c4f1e919c18d368a16c25"
}
}
„Використаний“ об’єкт Transfer вже не можна застосувати до іншого об’єкта.
Спробуємо змінити план закупівлі за допомогою ключа token, отриманого при створенні об’єкта Transfer.
PATCH /api/2.5/plans/5e6819d2385c4c6a8a7877b87488074c?acc_token=387cfff9b93243ddaa148e5ea350ceb5 HTTP/1.0
Authorization: Bearer broker1
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"budget": {
"project": {
"name": "proj_name",
"id": "123"
},
"amount": 10000,
"amountNet": 12222,
"currency": "UAH",
"id": "12303111000-2",
"description": "broker1 now can change the plan",
"period": {
"startDate": "2027-01-01T00:00:00",
"endDate": "2027-12-31T00:00:00"
},
"breakdown": [
{
"title": "other",
"description": "Breakdown other description.",
"value": {
"amount": 1500,
"currency": "UAH"
}
}
]
}
}
}
HTTP/1.0 200 OK
Content-Type: application/json
{
"data": {
"status": "scheduled",
"procuringEntity": {
"id": "634ca17a96ee43b49a273a81ee1730fa",
"name": "ДУС",
"identifier": {
"scheme": "UA-EDR",
"id": "111983",
"legalName": "ДП Державне Управління Справами"
},
"address": {
"streetAddress": "вул. Банкова, 11, корпус 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "01220",
"countryName": "Україна"
},
"kind": "general",
"signerInfo": {
"name": "Test Testovich",
"email": "example@email.com",
"telephone": "+380950000000",
"iban": "111111111111111",
"position": "Генеральний директор",
"authorizedBy": "Статут компанії"
}
},
"tender": {
"procurementMethod": "open",
"procurementMethodType": "belowThreshold",
"tenderPeriod": {
"startDate": "2027-01-08T00:00:00+02:00"
}
},
"budget": {
"id": "12303111000-2",
"description": "broker1 now can change the plan",
"amount": 10000.0,
"currency": "UAH",
"amountNet": 12222.0,
"project": {
"id": "123",
"name": "proj_name"
},
"period": {
"startDate": "2027-01-01T00:00:00+02:00",
"endDate": "2027-12-31T00:00:00+02:00"
},
"breakdown": [
{
"id": "c0fa57eb925847ae90cd1a60befefeb6",
"title": "other",
"description": "Breakdown other description.",
"value": {
"amount": 1500.0,
"currency": "UAH"
}
}
]
},
"classification": {
"description": "Seeds",
"scheme": "ДК021",
"id": "03111000-2"
},
"additionalClassifications": [
{
"scheme": "КЕКВ",
"id": "2000",
"description": "Поточні видатки"
}
],
"planID": "UA-P-2027-01-01-000001-a",
"items": [
{
"id": "6e9e9fdc76034547ae8e5fd0fe3c2e37",
"classification": {
"description": "Mustard seeds",
"scheme": "ДК021",
"id": "03111600-8"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.92",
"description": "Насіння гірчиці"
}
],
"unit": {
"name": "кг",
"code": "KGM"
},
"quantity": 1000.0,
"deliveryAddress": {
"streetAddress": "вул. Банкова 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "79000",
"countryName": "Україна"
},
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"description": "Насіння гірчиці"
},
{
"id": "fc0a16bffbcb46aabba00fa2de5262eb",
"classification": {
"description": "Sunflower seeds",
"scheme": "ДК021",
"id": "03111300-5"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.95",
"description": "Насіння соняшнику"
}
],
"unit": {
"name": "кг",
"code": "KGM"
},
"quantity": 2000.0,
"deliveryAddress": {
"streetAddress": "вул. Банкова 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "79000",
"countryName": "Україна"
},
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"description": "Насіння соняшнику"
},
{
"id": "b23ab41b6d7a4d12b2bf88f3e935372b",
"classification": {
"description": "Cotton seeds",
"scheme": "ДК021",
"id": "03111400-6"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "01.11.84",
"description": "Насіння бавовнику"
}
],
"unit": {
"name": "кг",
"code": "KGM"
},
"quantity": 3000.0,
"deliveryAddress": {
"streetAddress": "вул. Банкова 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "79000",
"countryName": "Україна"
},
"deliveryDate": {
"startDate": "2027-01-03T00:00:00+02:00",
"endDate": "2027-01-06T00:00:00+02:00"
},
"description": "Насіння бавовнику"
}
],
"buyers": [
{
"id": "79de7466f3374c8690d63b572715a112",
"name": "ДУС",
"identifier": {
"scheme": "UA-EDR",
"id": "111983",
"legalName": "ДП Державне Управління Справами"
},
"address": {
"streetAddress": "вул. Банкова, 11, корпус 1",
"locality": "м. Київ",
"region": "м. Київ",
"postalCode": "01220",
"countryName": "Україна"
},
"kind": "general",
"signerInfo": {
"name": "Test Testovich",
"email": "example@email.com",
"telephone": "+380950000000",
"iban": "111111111111111",
"position": "Генеральний директор",
"authorizedBy": "Статут компанії"
}
}
],
"rationale": {
"description": "Недостатньо змістовне обгрунтування",
"date": "2027-01-01T00:00:00+02:00"
},
"project": {
"title": "DREAMs come true",
"uri": "https://dream.gov.ua/ua/project/DREAM-UA-030524-EE48E08C/profile"
},
"owner": "broker1",
"dateCreated": "2027-01-01T00:00:00+02:00",
"dateModified": "2027-01-01T00:00:00+02:00",
"datePublished": "2027-01-01T00:00:00+02:00",
"id": "5e6819d2385c4c6a8a7877b87488074c"
}
}
Зверніть увагу, що тільки майданчик з відповідним рівнем акредитації може стати новим власником. В іншому випадку майданчику така дія буде заборонена.
POST /api/2.5/plans/5e6819d2385c4c6a8a7877b87488074c/ownership HTTP/1.0
Authorization: Bearer broker2
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"id": "69e7667db8714df587ebd82b2da752d5",
"transfer": "9192aab96d4b4959affa7d7644f539a6"
}
}
HTTP/1.0 403 Forbidden
Content-Type: application/json
{
"status": "error",
"errors": [
{
"location": "url",
"name": "accreditation",
"description": "Broker Accreditation level does not permit ownership change"
}
]
}
Зміна власника дозволена тільки якщо поточний власник тендера має спеціальний рівень акредетації, що дозволяє зміну:
POST /api/2.5/plans/5e6819d2385c4c6a8a7877b87488074c/ownership HTTP/1.0
Authorization: Bearer brokerx
Content-Type: application/json
Host: lb-api-sandbox.prozorro.gov.ua
{
"data": {
"id": "ea8708a2c6f046d39672eb4ddae4aefd",
"transfer": "9192aab96d4b4959affa7d7644f539a6"
}
}
HTTP/1.0 403 Forbidden
Content-Type: application/json
{
"status": "error",
"errors": [
{
"location": "url",
"name": "accreditation",
"description": "Owner Accreditation level does not permit ownership change"
}
]
}