Список змін¶
Список змін - спосіб синхронізації з базою даних моніторингів ДАСУ. Спробуемо використати feed=changes
для отримання моніторингів відсортованих по даті зміни:
GET /api/2.5/monitorings?feed=changes&limit=3&opt_fields=reasons HTTP/1.0
Host: audit-api-sandbox.prozorro.gov.ua
Response: 200 OK
Content-Type: application/json
{
"data": [
{
"id": "c5c21052abc34c87b93f4852aba5d5ea",
"dateModified": "2018-01-01T02:00:00+02:00"
},
{
"id": "f0dcdef86c634647a23c1a6117a408c6",
"dateModified": "2018-01-01T02:00:00+02:00"
},
{
"id": "9ed1c8769f03420eb3000ef27c139d4d",
"dateModified": "2018-01-01T02:00:00+02:00"
}
],
"next_page": {
"offset": "a8ff31c911fc600038fa5a1b2942952b",
"path": "/api/2.5/monitorings?limit=3&feed=changes&offset=a8ff31c911fc600038fa5a1b2942952b",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&feed=changes&offset=a8ff31c911fc600038fa5a1b2942952b"
}
}
Відповідь містить next_page
. З кожним використанням ми отримуємо моніторинги що ще не були синхронізовані.
GET /api/2.5/monitorings?limit=3&feed=changes&offset=a8ff31c911fc600038fa5a1b2942952b HTTP/1.0
Host: audit-api-sandbox.prozorro.gov.ua
Response: 200 OK
Content-Type: application/json
{
"data": [
{
"id": "a67391960a6f4cf8a091c1fb898ef404",
"dateModified": "2018-01-01T02:00:00+02:00"
},
{
"id": "80e451287e28492dac96cac9a2db529b",
"dateModified": "2018-01-01T02:00:00+02:00"
}
],
"next_page": {
"offset": "a2bd9bb2b4959d8d930b3737ae00b652",
"path": "/api/2.5/monitorings?limit=3&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652"
},
"prev_page": {
"offset": "a8ff31c911fc600038fa5a1b2942952b",
"path": "/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=a8ff31c911fc600038fa5a1b2942952b",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=a8ff31c911fc600038fa5a1b2942952b"
}
}
Продовжимо до останньої сторінки:
GET /api/2.5/monitorings?limit=3&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652 HTTP/1.0
Host: audit-api-sandbox.prozorro.gov.ua
Response: 200 OK
Content-Type: application/json
{
"data": [],
"next_page": {
"offset": "a2bd9bb2b4959d8d930b3737ae00b652",
"path": "/api/2.5/monitorings?limit=3&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652"
},
"prev_page": {
"offset": "a2bd9bb2b4959d8d930b3737ae00b652",
"path": "/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652"
}
}
Оскільки більше немає результатів, почекаємо перш ніж робити нову спробу:
GET /api/2.5/monitorings?limit=3&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652 HTTP/1.0
Host: audit-api-sandbox.prozorro.gov.ua
Response: 200 OK
Content-Type: application/json
{
"data": [
{
"id": "9409c91316e942e199a6724e67189679",
"dateModified": "2018-01-01T02:00:00+02:00"
}
],
"next_page": {
"offset": "9c9044fd6fbd406653167a45a81aacfa",
"path": "/api/2.5/monitorings?limit=3&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa"
},
"prev_page": {
"offset": "a2bd9bb2b4959d8d930b3737ae00b652",
"path": "/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=a2bd9bb2b4959d8d930b3737ae00b652"
}
}
Наступна сторінка може бути знову пустою
GET /api/2.5/monitorings?limit=3&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa HTTP/1.0
Host: audit-api-sandbox.prozorro.gov.ua
Response: 200 OK
Content-Type: application/json
{
"data": [],
"next_page": {
"offset": "9c9044fd6fbd406653167a45a81aacfa",
"path": "/api/2.5/monitorings?limit=3&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa"
},
"prev_page": {
"offset": "9c9044fd6fbd406653167a45a81aacfa",
"path": "/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa"
}
}
або містити моніторинги з новими змінами
GET /api/2.5/monitorings?limit=3&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa HTTP/1.0
Host: audit-api-sandbox.prozorro.gov.ua
Response: 200 OK
Content-Type: application/json
{
"data": [
{
"id": "059a8c655c1248b9839be632cb95f44a",
"dateModified": "2018-01-01T02:00:00+02:00"
}
],
"next_page": {
"offset": "e063e89aeac253e9250c0d6123e5de81",
"path": "/api/2.5/monitorings?limit=3&feed=changes&offset=e063e89aeac253e9250c0d6123e5de81",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&feed=changes&offset=e063e89aeac253e9250c0d6123e5de81"
},
"prev_page": {
"offset": "9c9044fd6fbd406653167a45a81aacfa",
"path": "/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa",
"uri": "http://audit-api-sandbox.prozorro.gov.ua/api/2.5/monitorings?limit=3&descending=1&feed=changes&offset=9c9044fd6fbd406653167a45a81aacfa"
}
}