Вітаємо на сайті документації по openprocurement.contracting.api!¶
Будь ласка, повідомляйте про всі проблеми та поради покращень або через розсилку або через issue tracker.
Зміст:
Огляд¶
Open Procurement Contracting це плагін до Open Procurement API. Цей модуль призначений для реєстрації метаінформації та документів (бінарних файлів), які пов’язані з договором і генеруються при його підписанні, виконанні та завершенні.
REST-ful інтерфейс для плагіна відповідає основним принципам дизайну програмного забезпечення.
Домовленості¶
Цей плагін підтримує домовленості Open Procurement API.
Стабільність API¶
API є дуже нестабільним. Хоча точки входу API залишатимуться відносно стабільними, формати обміну даними будуть часно змінюватись. Зміни в API обговорюються через Open Procurement API. Питання можна задати через Gitter.
Стандарт даних¶
Стандарт даних змодельований згідно Open Contracting Standard з розширеннями в тих областях, які він не покриває.
Contract¶
Схема¶
id: | uid, генерується автоматично OpenContracting Description: Ідентифікатор цього договору. |
||||||||
---|---|---|---|---|---|---|---|---|---|
awardID: | рядок, обов’язковий OpenContracting Description: Award.id вказує на рішення, згідно якого видається договір. |
||||||||
contractID: | рядок, генерується автоматично, лише для читання |
||||||||
contractNumber: | рядок |
||||||||
title: | рядок OpenContracting Description: Назва договору |
||||||||
description: | рядок OpenContracting Description: Опис договору |
||||||||
status: | рядок, обов’язковий OpenContracting Description: Поточний статус договору. Можливі значення:
|
||||||||
period: |
OpenContracting Description: Дата початку та завершення договору. |
||||||||
items: | Список об’єктів Item, генерується автоматично, лише для читання OpenContracting Description: Товари, послуги та інші нематеріальні результати у цій угоді. Зверніть увагу: Якщо список співпадає з визначенням переможця award, то його не потрібно повторювати. |
||||||||
procuringEntity: | |||||||||
OpenContracting Description: Об’єкт, що управляє закупівлею. Він не обов’язково є покупцем, який платить / використовує закуплені елементи. |
|||||||||
suppliers: | Список об’єктів Organization, генерується автоматично, лише для читання |
||||||||
value: | Об’єкт Value, генерується автоматично, лише для читання OpenContracting Description: Загальна вартість договору. |
||||||||
dateSigned: | рядок, Date, генерується автоматично OpenContracting Description: Дата підписання договору. Якщо було декілька підписань, то береться дата останнього підписання. |
||||||||
documents: | Список об’єктів Document OpenContracting Description: Усі документи та додатки пов’язані з договором, включно з будь-якими повідомленнями. |
||||||||
changes: | Список пов’язаних об’єктів Change |
||||||||
amountPaid: |
Дійсно оплачена сума. |
||||||||
terminationDetails: | |||||||||
рядок, обов’язковий для неуспішних договорів Причина припинення договору. Наявність цього поля вказує, що договір є неуспішним. |
Document¶
Схема¶
id: | рядок, генерується автоматично |
---|---|
documentType: | рядок
|
title: | рядок, багатомовний OpenContracting Description: Назва документа. |
description: | рядок, багатомовний OpenContracting Description: Короткий опис документа. Якщо документ не буде доступний онлайн, то поле опису можна використати для вказання способу отримання копії документа. |
format: | рядок OpenContracting Description: Формат документа зі списку кодів IANA Media Types, з одним додатковим значенням ‘offline/print’, що буде використовуватись, коли запис цього документа використовується для опису офлайнової публікації документа. |
url: | рядок, генерується автоматично OpenContracting Description: Пряме посилання на документ чи додаток. |
datePublished: | рядок, Date OpenContracting Description: Дата, коли документ був опублікований вперше. |
dateModified: | рядок, Date OpenContracting Description: Дата, коли документ був змінений востаннє. |
language: | рядок Можливі значення:
OpenContracting Description: Вказує мову документа, використовуючи або двоцифровий код ISO 639-1, або розширений BCP47 language tags. |
documentOf: | рядок Можливі значення:
|
relatedItem: | рядок Ідентифікатор пов’язаних об’єктів Contract, Change, Lot або Item. |
Organization¶
Схема¶
name: | рядок, багатомовний, обов’язковий переклад назв українською та англійською: uk (title) та en (title_en) OpenContracting Description: Назва організації. |
---|---|
identifier: |
OpenContracting Description: Ідентифікатор цієї організації. |
additionalIdentifiers: | |
Список об’єктів Identifier |
|
address: | Address, обов’язково |
contactPoint: | ContactPoint, обов’язково |
Identifier¶
Схема¶
scheme: | рядок OpenContracting Description: Ідентифікатори організації беруться з існуючої схеми ідентифікації. Це поле вказує схему або список кодів, де можна знайти ідентифікатор організації. Це значення повинно братись зі Схеми Ідентифікації Організацій. |
---|---|
id: | рядок, обов’язковий OpenContracting Description: Ідентифікатор організації у вибраній схемі. Дозволеними є коди зі спику кодів “Organisation Registration Agency” Стандарту IATI з додаванням коду UA-EDR для організацій, зареєстрованих в Україні (ЄДРПОУ та ІПН). |
legalName: | рядок, багатомовний OpenContracting Description: Офіційно зареєстрована назва організації. |
uri: | uri OpenContracting Description: URI для ідентифікації організації, наприклад, ті, які надають Open Corporates або інші постачальники URI. Це не для вебсайту організації, його можна надати в полі url в ContactPoint організації. |
Address¶
Схема¶
streetAddress: | рядок, обов’язковий OpenContracting Description: Вулиця. Наприклад, вул. Хрещатик, 22. |
---|---|
locality: | рядок, обов’язковий OpenContracting Description: Населений пункт. Наприклад, Київ. |
region: | рядок, обов’язковий OpenContracting Description: Область. Наприклад, Київська. |
postalCode: | рядок, обов’язковий OpenContracting Description: Поштовий індекс, Наприклад, 78043. |
countryName: | рядок, багатомовний, обов’язковий OpenContracting Description: Назва країни. Наприклад, Україна. |
ContactPoint¶
Схема¶
name: | рядок, багатомовний, обов’язковий OpenContracting Description: Ім’я контактної особи, назва відділу чи контактного пункту для листування, що стосується цього процесу укладання договору. |
---|---|
email: | OpenContracting Description: Адреса електронної пошти контактної особи/пункту. |
telephone: | рядок OpenContracting Description: Номер телефону контактної особи/пункту. Повинен включати міжнародний телефонний код. |
faxNumber: | рядок OpenContracting Description: Номер факсу контактної особи/пункту. Повинен включати міжнародний телефонний код. |
url: | URL-адреса OpenContracting Description: Веб адреса контактної особи/пункту. |
availableLanguage: | |
рядок Можливі значення:
Визначає мови спілкування. |
Повинне бути заповнене хоча б одне з полів: або email, або telephone.
Item¶
Схема¶
id: | рядок, генерується автоматично |
||||||
---|---|---|---|---|---|---|---|
description: | рядок, багатомовний, обов’язковий OpenContracting Description: Опис товарів та послуг, які повинні бути надані. |
||||||
classification: |
OpenContracting Description: Початкова класифікація елемента. Дивіться у itemClassificationScheme, щоб визначити бажані списки класифікації, включно з CPV та GSIN. Класифікація classification.scheme обов’язково повинна бути CPV. classification.id повинно бути дійсним CPV кодом. |
||||||
additionalClassifications: | |||||||
Список об’єктів Classification OpenContracting Description: Масив додаткових класифікацій для елемента. Дивіться у список кодів itemClassificationScheme, щоб використати поширені варіанти в OCDS. Також можна використовувати для представлення кодів з внутрішньої схеми класифікації. Обов’язково мати хоча б один елемент з ДКПП у стрічці scheme. |
|||||||
unit: |
OpenContracting Description: Опис одиниці виміру товару, наприклад, години, кілограми. Складається з назви одиниці та значення однієї одиниці. |
||||||
quantity: | ціле число OpenContracting Description: Кількість необхідних одиниць. |
||||||
deliveryDate: | Period, обов’язково Період, протягом якого елемент повинен бути доставлений. |
||||||
deliveryAddress: | |||||||
Address, обов’язково Адреса місця, куди елемент повинен бути доставлений. |
|||||||
deliveryLocation: | |||||||
словник Географічні координати місця доставки. Складається з таких компонентів:
deliveryLocation зазвичай має вищий пріоритет ніж deliveryAddress, якщо вони обидва вказані. |
|||||||
relatedLot: | рядок ID пов’язаного Lot. |
Classification¶
Схема¶
scheme: | рядок OpenContracting Description: Класифікація повинна бути взята з існуючої схеми або списку кодів. Це поле використовується, щоб вказати схему/список кодів, з яких буде братись класифікація. Для класифікацій лінійних елементів це значення повинно представляти відому Схему Класифікації Елементів, де це можливо. |
---|---|
id: | рядок OpenContracting Description: Код класифікації взятий з вибраної схеми. |
description: | рядок OpenContracting Description: Текстовий опис або назва коду. |
uri: | uri OpenContracting Description: URI для ідентифікації коду. Якщо індивідуальні URI не доступні для елементів у схемі ідентифікації це значення треба залишити пустим. |
Unit¶
Схема¶
code: | рядок, обов’язковий Код одиниці в UN/CEFACT Recommendation 20. |
---|---|
name: | рядок OpenContracting Description: Назва одиниці |
Period¶
Date¶
Дата/час у Date Format: ISO 8601.
Value¶
Схема¶
amount: | float, обов’язково OpenContracting Description: Кількість як число. Повинно бути додатнім. |
---|---|
currency: | рядок, обов’язковий OpenContracting Description: Валюта у трибуквенному форматі ISO 4217. |
valueAddedTaxIncluded: | |
bool, обов’язково |
Change¶
Схема¶
id: | uid, генерується автоматично Ідентифікатор цієї зміни. |
---|---|
rationale: | рядок, багатомовний, обов’язковий Опис причини змін договору |
rationaleTypes: | Список рядків, обов’язково Тип причини додання змін до договору Внесення змін до істотних умов договору можливі у випадках, описаних частиною четвертою статті 36 Закону України “Про публічні закупівлі”. Можливі значення рядка:
|
date: | рядок, Date, генерується автоматично |
dateSigned: | рядок, Date |
contractNumber: | рядок |
status: | рядок, обов’язковий Поточний статус зміни. Можливі значення:
|
Туторіал¶
Розглянемо основні правила¶
Подивимось як працює точка входу /contracts:
GET /api/2.3/contracts HTTP/1.0
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"next_page": {
"path": "/api/2.3/contracts?offset=",
"uri": "http://api-sandbox.openprocurement.org/api/2.3/contracts?offset=",
"offset": ""
},
"data": []
}
При виклику видає пустий набір.
Перенесенням договору із системи закупівель займається автоматизований процес.
Створення договору¶
Нехай у нас відбулась закупівля і вона є в статусі complete
. Після цього договір, створений в системі закупівель, потрапляє в систему договорів.
Майданчики (брокери) не мають можливості створювати договори в системі договорів.
Отримання договору¶
Договір в системі закупівель
GET /api/2.3/tenders/7dc086c4a213492ab9c43b95b43bd817/contracts/bebdbaf7777d4bd39756f3e8872c1f46 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
},
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "c008a4d57c584dafa187ea72647e3cb7",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"value": {
"currency": "UAH",
"amount": 500.0,
"valueAddedTaxIncluded": true
},
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"date": "2017-06-21T17:53:04.600513+03:00",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"contractID": "UA-2017-06-21-000001-1"
}
}
Ідентифікатор `id` договору однаковий в системах закіпівель та договорів.
Спробуємо доступитись до URL створеного об’єкта:
GET /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46 HTTP/1.0
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"value": {
"currency": "UAH",
"amount": 500.0,
"valueAddedTaxIncluded": true
},
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
},
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "c008a4d57c584dafa187ea72647e3cb7",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"dateModified": "2017-06-21T17:53:04.877904+03:00",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
Отримання доступу¶
Для того, щоб отримати права для майбутнього редагування договору, необхідно використати таку в’юшку PATCH: /contracts/{id}/credentials?acc_token={tender_token}
з API ключем майданчика, де була згенерована закупівля.
В PATCH: /contracts/{id}/credentials?acc_token={tender_token}
:
id
- це ідентифікатор договору,tender_token
- це токен закупівлі (використовується для генерування токена договору).
У відповіді буде access.token
для договору, який буде використовуватись для модифікації договору.
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/credentials?acc_token=7d16511a9bb949ad9df35d12de325162 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 0
Content-Type: application/json
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"access": {
"token": "2f1294ae618e49219d85607d17afabf6"
},
"data": {
"status": "active",
"value": {
"currency": "UAH",
"amount": 500.0,
"valueAddedTaxIncluded": true
},
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
},
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "c008a4d57c584dafa187ea72647e3cb7",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"dateModified": "2017-06-21T17:53:04.954121+03:00",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
Переглянемо договори.
GET /api/2.3/contracts HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"next_page": {
"path": "/api/2.3/contracts?offset=2017-06-21T17%3A53%3A04.954121%2B03%3A00",
"uri": "http://api-sandbox.openprocurement.org/api/2.3/contracts?offset=2017-06-21T17%3A53%3A04.954121%2B03%3A00",
"offset": "2017-06-21T17:53:04.954121+03:00"
},
"data": [
{
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"dateModified": "2017-06-21T17:53:04.954121+03:00"
}
]
}
Ми бачимо внутрішнє id договору (що може бути використано для побудови повної URL-адреси, якщо додати http://api-sandbox.openprocurement.org/api/0/contracts/) та його dateModified дату.
Редагування договору¶
Внесення змін до істотних умов договору можливі у випадках, описаних частиною четвертою статті 36 Закону України “Про публічні закупівлі”.
Істотні умови договору можуть бути змінені поданням нового об’єкта Change в котейнер Contract.changes.
Всі зміни change обробляються точкою входу (endpoint) /contracts/{id}/changes.
Подання зміни¶
Додамо нову зміну change до договору:
POST /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/changes?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 267
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Опис причини змін контракту"
}
}
Response: 201 Created
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "pending",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Опис причини змін контракту",
"date": "2017-06-21T17:53:05.109702+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
}
Зверніть увагу на те, що ви можете надати більше ніж одне значення для поля rationaleTypes
.
Ви можете переглянути зміну change:
GET /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/changes/c382f2a7da3647bbb4e8fea2af514157 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "pending",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Опис причини змін контракту",
"date": "2017-06-21T17:53:05.109702+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
}
Зміну change можна модифікувати доки вона має статус pending
.
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/changes/c382f2a7da3647bbb4e8fea2af514157?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 255
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"rationale": "Друга і третя поставка має бути розфасована"
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "pending",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:05.109702+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
}
Завантаження документа зміни¶
Документ можна додати доки зміна change має статус pending
.
Документ додається в два етапи:
ви повинні завантажити документ
POST /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 199
Content-Type: multipart/form-data; boundary=----------a_BoUnDaRy995442828706$
Host: api-sandbox.openprocurement.org
Response: 201 Created
Content-Type: application/json; charset=UTF-8
Location: http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7
{
"data": {
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
}
}
ви повинні задати властивості документа:
"documentOf": "change"
та"relatedItem": "{change.id}"
, щоб “прив’язати” завантажений документ до зміни change:
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 85
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"documentOf": "change",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157"
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
}
}
Оновлення властивостей зміни¶
Тепер ви можете оновити властивості договору, що стосуються зміни.
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 144
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"period": {
"startDate": "2017-06-21T17:53:05.582663+03:00",
"endDate": "2017-07-21T17:53:05.582718+03:00"
},
"value": {
"amount": 438
}
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"value": {
"currency": "UAH",
"amount": 438.0,
"valueAddedTaxIncluded": true
},
"documents": [
{
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
}
],
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
},
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "c008a4d57c584dafa187ea72647e3cb7",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"period": {
"startDate": "2017-06-21T17:53:05.582663+03:00",
"endDate": "2017-07-21T17:53:05.582718+03:00"
},
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"changes": [
{
"status": "pending",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:05.109702+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
],
"dateModified": "2017-06-21T17:53:05.673576+03:00",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
Ми бачимо, що додаткові властивості об’єднані з існуючими даними закупівлі. Додатково оновлена властивість dateModified, щоб відображати останню дату модифікації.
Поля, які можна модифікувати: title, description, status, value.amount, period, items, amountPaid.amount, terminationDetails.
Дивіться приклади зміни елемента (items) нижче. Ви можете:
оновити елемент (items):
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 42
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"items": [
{
"quantity": 2
},
{}
]
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"value": {
"currency": "UAH",
"amount": 438.0,
"valueAddedTaxIncluded": true
},
"documents": [
{
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
}
],
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 2
},
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "c008a4d57c584dafa187ea72647e3cb7",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 5
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"period": {
"startDate": "2017-06-21T17:53:05.582663+03:00",
"endDate": "2017-07-21T17:53:05.582718+03:00"
},
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"changes": [
{
"status": "pending",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:05.109702+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
],
"dateModified": "2017-06-21T17:53:05.807714+03:00",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
видалити елемент (items):
Request example for cases when contract has several items:
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 1160
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 2
}
]
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"value": {
"currency": "UAH",
"amount": 438.0,
"valueAddedTaxIncluded": true
},
"documents": [
{
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
}
],
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 2
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"period": {
"startDate": "2017-06-21T17:53:05.582663+03:00",
"endDate": "2017-07-21T17:53:05.582718+03:00"
},
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"changes": [
{
"status": "pending",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:05.109702+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
],
"dateModified": "2017-06-21T17:53:05.942313+03:00",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
Застосування зміни¶
Зміна change застосовується при переключенні в статус active
.
Щоб застосувати статус active
потрібно встановити поле dateSigned.
ПІсля цього модифікувати зміну change вже не можна.
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/changes/c382f2a7da3647bbb4e8fea2af514157?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 80
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"status": "active",
"dateSigned": "2017-06-21T17:53:05.978602+03:00"
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"dateSigned": "2017-06-21T17:53:05.978602+03:00",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:06.002992+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
}
Валідація поля dateSigned:
для першої зміни change договору дата повинна бути після contract.dateSigned;
для всіх наступних змін change договору дата повинна бути після попередньої дати change.dateSigned.
Ви можете переглянути всі зміни:
GET /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/changes HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": [
{
"status": "active",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"dateSigned": "2017-06-21T17:53:05.978602+03:00",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:06.002992+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
]
}
Всі зміни присутні при перегляді контракту.
GET /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "active",
"value": {
"currency": "UAH",
"amount": 438.0,
"valueAddedTaxIncluded": true
},
"documents": [
{
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
}
],
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 2
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"period": {
"startDate": "2017-06-21T17:53:05.582663+03:00",
"endDate": "2017-07-21T17:53:05.582718+03:00"
},
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"changes": [
{
"status": "active",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"dateSigned": "2017-06-21T17:53:05.978602+03:00",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:06.002992+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
],
"dateModified": "2017-06-21T17:53:06.006808+03:00",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
Завантаження документації¶
Замовник може завантажити PDF файл у створений договір. Завантаження повинно відбуватись згідно правил Documents Uploading.
POST /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 191
Content-Type: multipart/form-data; boundary=----------a_BoUnDaRy679645668448$
Host: api-sandbox.openprocurement.org
Response: 201 Created
Content-Type: application/json; charset=UTF-8
Location: http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/398c861329694c5fb8aad22169159606
{
"data": {
"title": "contract.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/398c861329694c5fb8aad22169159606?download=a0d8357d8aca4a81aafce6912df0a6f7",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.124541+03:00",
"id": "398c861329694c5fb8aad22169159606",
"dateModified": "2017-06-21T17:53:06.124581+03:00"
}
}
Код відповіді 201 Created та заголовок Location підтверджують, що документ було створено. Додатково можна зробити запит точки входу API колекції документів, щоб підтвердити дію:
GET /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": [
{
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
},
{
"title": "contract.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/398c861329694c5fb8aad22169159606?download=a0d8357d8aca4a81aafce6912df0a6f7",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.124541+03:00",
"id": "398c861329694c5fb8aad22169159606",
"dateModified": "2017-06-21T17:53:06.124581+03:00"
}
]
}
І знову можна перевірити, що є два завантажених документа.
POST /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 215
Content-Type: multipart/form-data; boundary=----------a_BoUnDaRy730885500672$
Host: api-sandbox.openprocurement.org
Response: 201 Created
Content-Type: application/json; charset=UTF-8
Location: http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1
{
"data": {
"title": "contract_additional_docs.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?download=e071206d6e464a2590fa505a5ba91c3d",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.232704+03:00",
"id": "167427d8f0ed431784f1a9b7dafe91b1",
"dateModified": "2017-06-21T17:53:06.232747+03:00"
}
}
Якщо сталась помилка, ми можемо ще раз завантажити документ поверх старої версії:
PUT /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 226
Content-Type: multipart/form-data; boundary=----------a_BoUnDaRy0158879343206$
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"title": "contract_additional_docs.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?download=f9f4d77eb7fb4dfba28f96e89993e75e",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.232704+03:00",
"id": "167427d8f0ed431784f1a9b7dafe91b1",
"dateModified": "2017-06-21T17:53:06.301704+03:00"
}
}
І ми бачимо, що вона перекриває оригінальну версію:
GET /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Host: api-sandbox.openprocurement.org
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"title": "contract_additional_docs.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?download=f9f4d77eb7fb4dfba28f96e89993e75e",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.232704+03:00",
"previousVersions": [
{
"title": "contract_additional_docs.doc",
"url": "/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?download=e071206d6e464a2590fa505a5ba91c3d",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.232704+03:00",
"id": "167427d8f0ed431784f1a9b7dafe91b1",
"dateModified": "2017-06-21T17:53:06.232747+03:00"
}
],
"id": "167427d8f0ed431784f1a9b7dafe91b1",
"dateModified": "2017-06-21T17:53:06.301704+03:00"
}
}
Завершення договору¶
Перед завершенням договору необхідно встановити значення поля amountPaid
(незалежно від того успішний договір чи ні). Договір можна завершити переключенням у статус terminated
. Виконаємо ці дії єдиним запитом:
PATCH /api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46?acc_token=2f1294ae618e49219d85607d17afabf6 HTTP/1.0
Authorization: Basic YnJva2VyOg==
Content-Length: 65
Content-Type: application/json
Host: api-sandbox.openprocurement.org
DATA:
{
"data": {
"status": "terminated",
"amountPaid": {
"amount": 430
}
}
}
Response: 200 OK
Content-Type: application/json; charset=UTF-8
{
"data": {
"status": "terminated",
"value": {
"currency": "UAH",
"amount": 438.0,
"valueAddedTaxIncluded": true
},
"changes": [
{
"status": "active",
"rationaleTypes": [
"volumeCuts",
"priceReduction"
],
"rationale_en": "Contract change cause",
"dateSigned": "2017-06-21T17:53:05.978602+03:00",
"rationale": "Друга і третя поставка має бути розфасована",
"date": "2017-06-21T17:53:06.002992+03:00",
"id": "c382f2a7da3647bbb4e8fea2af514157"
}
],
"documents": [
{
"title": "contract_changes.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/853ad85f888c403eb64b3db2ce16fed7?download=6b9d115c4fa94edb8d1f07615ed5b85c",
"format": "application/msword",
"documentOf": "change",
"datePublished": "2017-06-21T17:53:05.477533+03:00",
"id": "853ad85f888c403eb64b3db2ce16fed7",
"relatedItem": "c382f2a7da3647bbb4e8fea2af514157",
"dateModified": "2017-06-21T17:53:05.477575+03:00"
},
{
"title": "contract.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/398c861329694c5fb8aad22169159606?download=a0d8357d8aca4a81aafce6912df0a6f7",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.124541+03:00",
"id": "398c861329694c5fb8aad22169159606",
"dateModified": "2017-06-21T17:53:06.124581+03:00"
},
{
"title": "contract_additional_docs.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?download=e071206d6e464a2590fa505a5ba91c3d",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.232704+03:00",
"id": "167427d8f0ed431784f1a9b7dafe91b1",
"dateModified": "2017-06-21T17:53:06.232747+03:00"
},
{
"title": "contract_additional_docs.doc",
"url": "http://api-sandbox.openprocurement.org/api/2.3/contracts/bebdbaf7777d4bd39756f3e8872c1f46/documents/167427d8f0ed431784f1a9b7dafe91b1?download=f9f4d77eb7fb4dfba28f96e89993e75e",
"format": "application/msword",
"documentOf": "contract",
"datePublished": "2017-06-21T17:53:06.232704+03:00",
"id": "167427d8f0ed431784f1a9b7dafe91b1",
"dateModified": "2017-06-21T17:53:06.301704+03:00"
}
],
"items": [
{
"description": "футляри до державних нагород",
"classification": {
"scheme": "ДК021",
"description": "Cartons",
"id": "44617100-9"
},
"additionalClassifications": [
{
"scheme": "ДКПП",
"id": "17.21.1",
"description": "папір і картон гофровані, паперова й картонна тара"
}
],
"deliveryAddress": {
"postalCode": "79000",
"countryName": "Україна",
"streetAddress": "вул. Банкова 1",
"region": "м. Київ",
"locality": "м. Київ"
},
"deliveryDate": {
"startDate": "2017-06-23T17:53:02.070092+03:00",
"endDate": "2017-06-26T17:53:02.070092+03:00"
},
"id": "f8a311c2c9a34ff08bdf59bbc8092348",
"unit": {
"code": "44617100-9",
"name": "item"
},
"quantity": 2
}
],
"suppliers": [
{
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
}
],
"period": {
"startDate": "2017-06-21T17:53:05.582663+03:00",
"endDate": "2017-07-21T17:53:05.582718+03:00"
},
"dateSigned": "2017-06-21T17:53:04.594612+03:00",
"id": "bebdbaf7777d4bd39756f3e8872c1f46",
"procuringEntity": {
"contactPoint": {
"name": "Державне управління справами",
"telephone": "0440000000"
},
"identifier": {
"scheme": "UA-EDR",
"id": "00037256",
"uri": "http://www.dus.gov.ua/"
},
"name": "Державне управління справами",
"kind": "general",
"address": {
"postalCode": "01220",
"countryName": "Україна",
"streetAddress": "вул. Банкова, 11, корпус 1",
"region": "м. Київ",
"locality": "м. Київ"
}
},
"contractID": "UA-2017-06-21-000001-1",
"owner": "broker",
"awardID": "2f549474497c475b8023d51845cbb2bd",
"amountPaid": {
"currency": "UAH",
"amount": 430.0,
"valueAddedTaxIncluded": true
},
"dateModified": "2017-06-21T17:53:06.561834+03:00",
"tender_id": "7dc086c4a213492ab9c43b95b43bd817"
}
}
Зверніть увагу, що ви можете встановлювати/змінювати значення amountPaid.amount
. А значення полів amountPaid.currency
і amountPaid.valueAddedTaxIncluded
генеруються з поля Contract.value
.
Якщо договір неуспішний, то потрібно вказати причини його припинення terminationDetails
.
Після цього додання змін до договору не дозволяється.